Write a single Java program that includes all tasks (parts)
ATTENTION: In your solution, do not use collection, iterator or other specific classes
and their methods, only use the knowledge and subjects taught in lectures.
Book Class:
Write a Java object class Book that has the following members:
"book-name, author, year, pages p.”
(With a "p." after pages. See sample run below.)
Part:1
A text file books.txt has lines that contain information about books. Examine the books.txt file.
Sample lines from file:
The Alchemist;Paulo Coelho;1988;163
Dune;Frank Herbert;1965;412
Write a Java static method readBooks() that takes a file name as parameter, and reads the lines of the file, create Book objects, store these objects in an ArrayList of books, and returns this ArrayList.
Write a Java static method printBooks() that takes an ArrayList of books as parameter, and prints the book objects in this ArrayList.
Write Java statements that calls readBooks() method to create an ArrayList of book objects, then print the books in the ArrayList by calling printBooks() method as seen in the sample run below.
Part 2:
Write a Java static method findBooks() that takes an ArrayList of book objects and a string (containing part of author name) as parameters, and prints the book objects containg the 2nd parameter in the author attribute
Hint: You may use String method indexOf() to check if a string (the author of a book object from ArrayList) contains another string (the 2nd parameter).
Write Java statements that inputs a string entered by user, and print the books that contain the entered string in author attribute in the ArrayList th by calling printBooks() method.
Part 3:
Write a recursive Java static method sumDigits() that gets an integer as parameter, and returns the sum of the digits of this integer.
Write Java statements that inputs an integer entered by the user, call sumDigits() method, than print the sum of the digits of this entered number.
Hint: The complex case for recursive sum of digits = the last digit + sum of digits of the rest.
Sample run:
Part-l:
The Alchemist, Paulo Coelho, 1988, 163p.
The Little Prince. Antoine De saInt Exupery, 1943. 114p
Jonathan Livingston Seagull, Richard Bach. 1970, 144p.
foundation, Isaac Asimov, 1942, 255p.
Dune, Frank Herbert, 1965, 412p
Foundation and Empire, Isaac Asimov, 1952, 247p.
984, George Orwell. 1949, 328p
Introduction to Java Programming, 8th Ed., y. Daniel Liang, 2011, 1366p.
Part:2
Enter part of author name: Asimov
Books written by Asimov:
Foundation, Isaac Asimov, 1942, 255p.
Foundation and Empire, Isaac Asimov, 1952, 247p
Part:3
Enter all integer number: 250872
Sum of digits of 250872 iS 24
Your program code may look as follows:
. . . .comment lines containing your name, surname, student-id and department
. . . .
public class Lab9
{
public static void main (String!] args)
{
System.out .println ("Part-1:")
. . . .
System.out.println("\nPart-2:")
. . . .
System.out.printin ("\nPart-3 : ")
. . . .
}
//The static methods here. . . .
}
class Book
{
. . . .
. . . .
}
Write a single Java program that includes all tasks (parts) ATTENTION: In your solution, do not use collection, iterator
-
- Site Admin
- Posts: 899603
- Joined: Mon Aug 02, 2021 8:13 am