I have a method in my main that adds a Library Card to an ArrayList. public stat
ID: 3837411 • Letter: I
Question
I have a method in my main that adds a Library Card to an ArrayList.
public static LibraryCardManager Card;
System.out.println("Enter Your Name");
String Name = input.next();
System.out.println("Enter Your ID Number");
String ID = input.next();
Card.addLibraryCard(ID, Name);
The LibraryManagerCard class takes a LibraryCard object as the parameter instead of an int and string from the method in main.
private ArrayList<LibraryCard> libraryCards;
public void addLibraryCard(LibraryCard card){
libraryCards.add(card);
}
How will I be able to change the int and string into a LibraryCard object and use that method. Full code below
Main.java
import java.time.LocalDate;
import java.util.Scanner;
public class main {
//public static Catalog catalog;
public static LibraryCardManager Card;
public static void main (String[] args) throws java.lang.Exception
{
// Set up the menu for the user to choose the action to perform
Catalog catalog = new Catalog();
Scanner input = new Scanner(System.in);
int selection = 0;
System.out.println("***************** WElCOME TO THE LIBRARY *******************");
System.out.println(" Please select one of the following options: ");
System.out.println("********* ***************************************** *********");
while (selection != 9){
System.out.println("1: Add Books or DVDs to the Library's Catalog");
System.out.println("2: Add a new LibraryCard");
System.out.println("3: Display a list of the Library Catalog");
System.out.println("4: Check-Out a Book or a DVD");
System.out.println("5: Display a list of Library Materials Checked-Out by you");
System.out.println("6: Check-In a Book or DVD by Material Title");
System.out.println("7: Check-out all Books & DVDs Checked-Out by you");
System.out.println("8: Renew a Book (only)");
System.out.println("9: Exit");
selection = input.nextInt();
switch(selection)
{
case 1 :
System.out.println("How many Books or DVDs Would You like to add to the Library's Catalog?");
int Copies = input.nextInt();
System.out.println("Enter 1 for Type BOOKS | Enter 2 to type DVDS");
int C1 = input.nextInt();
System.out.println("Enter the Material's Title");
String Title = input.next();
System.out.println("Enter the Material's ISBN");
String ISBN = input.next();
if (C1 == 1){
System.out.println("Enter The Book's Author");
String Author = input.next();
Book b = new Book(Title, ISBN, Author);
catalog.add(b, Copies);
}else if (C1 == 2){
System.out.println("Enter The DVD's Main Actor");
String mainActor = input.next();
DVD d = new DVD(Title, ISBN, mainActor);
catalog.add(d, Copies);
}
break;
case 2 :
System.out.println("Enter Your Name");
String Name = input.next();
System.out.println("Enter Your ID Number");
String ID = input.next();
Card.addLibraryCard(ID, Name); //Original Problem
break;
case 3 :
catalog.availableCopies();
break;
case 4 :
System.out.println("Enter Your Library Card ID Number");
String ID1 = input.next();
System.out.println("Enter Title of Library Material you want to Check-Out");
String Title1 = input.next();
LibraryCard CheckOutMaterial = Card.getCardByID(ID1);
CheckOutMaterial.checkOutLibraryMaterial(Title1); //Same problem here but different object
break;
case 5 :
System.out.println("Enter Your Library Card ID Number");
String ID2 = input.next();
LibraryCard CheckedOutMaterial = Card.getCardByID(ID2);
CheckedOutMaterial.getLibraryMaterialsSorted();
break;
case 6 :
System.out.println("Enter Your Library Card ID Number");
String ID3 = input.next();
System.out.println("Enter Material's Title to be Checked-In");
String Title2 = input.next();
LibraryCard ReturnMaterial = Card.getCardByID(ID3);
ReturnMaterial.returnMaterials(Title2);
break;
case 7 :
System.out.println("Enter Your Library Card ID Number");
String ID4 = input.next();
LibraryCard ReturnMaterial1 = Card.getCardByID(ID4);
for(LibraryMaterialCopy m : ReturnMaterial1.getMaterialsCheckedOut())
{
ReturnMaterial1.returnMaterials(m.getTitle());
}
break;
case 8 :
System.out.println("Enter Your Library Card ID Number");
String ID5 = input.next();
System.out.println("Enter the Book's Title to Renew");
String Title3 = input.next();
LibraryCard RenewBook = Card.getCardByID(ID5);
RenewBook.renewLibraryMaterial(Title3);
break;
case 9:
System.exit(0);
}
}
}
}
LibraryCard.java
import java.util.List;
import java.util.ArrayList;
import java.time.LocalDate;
import java.time.temporal.ChronoUnit;
public class LibraryCard {
private String id;
private String cardholderName;
private List<LibraryMaterialCopy> libraryMaterialsCheckedOut;
private double balance;
public LibraryCard(String i, String name) {
id = i;
cardholderName = name;
libraryMaterialsCheckedOut = new ArrayList<LibraryMaterialCopy>();
balance = 0;
}
public String getID() {
return id;
}
public String getCardholderName() {
return cardholderName;
}
public List<LibraryMaterialCopy> getlibraryMaterialsCheckedOut() {
return new ArrayList<LibraryMaterialCopy>(libraryMaterialsCheckedOut);
}
public void setCardholderName(String name) {
cardholderName = name;
}
public boolean checkOutLibraryMaterial(LibraryMaterialCopy libraryMaterial, LocalDate todaysDate) {
if (!libraryMaterial.checkOut(this))
return false;
libraryMaterialsCheckedOut.add(libraryMaterial);
return true;
}
public boolean checkOutLibraryMaterial(LibraryMaterialCopy libraryMaterial)
// default check out, uses today's date
{
return checkOutLibraryMaterial(libraryMaterial, LocalDate.now());
}
public boolean returnLibraryMaterial(LibraryMaterialCopy libraryMaterial, LocalDate returnDate)
// returns libraryMaterial and sends message to libraryMaterialCopy to do
// the same
// returns false if libraryMaterial is not checked out
// takes parameter that expresses the date of return
{
LocalDate dueDate = libraryMaterial.getDueDate();
if (!libraryMaterial.returnCopy())
return false;
if (!libraryMaterialsCheckedOut.remove(libraryMaterial))
return false;
long daysBetween = ChronoUnit.DAYS.between(dueDate, returnDate);
if (daysBetween > 0) // libraryMaterial is returned late
{
balance += libraryMaterial.getFinePerDay() * daysBetween;
}
return true;
}
public boolean returnLibraryMaterial(LibraryMaterialCopy libraryMaterial)
// default method, uses today's date as returns date
{
return returnLibraryMaterial(libraryMaterial, LocalDate.now());
}
public boolean renewLibraryMaterial(LibraryMaterialCopy libraryMaterial, LocalDate renewalDate)
// renews libraryMaterial. Returns false if libraryMaterial is not checked
// out already
// takes parameter that expresses date of renewal
// returns false if librayrMaterial is not a book
{
if (!libraryMaterialsCheckedOut.contains(libraryMaterial))
return false;
if (libraryMaterial.isRenewable()) {
if (!((BookCopy) libraryMaterial).renew(renewalDate))
return false;
return true;
}
return false;
}
public boolean renewLibraryMaterial(LibraryMaterialCopy libraryMaterial)
// default renewal method uses today's date as renewal date.
{
return renewLibraryMaterial(libraryMaterial, LocalDate.now());
}
public List<LibraryMaterialCopy> getlibraryMaterialsDueBy(LocalDate date)
// returns an List of libraryMaterials due on or before date
{
List<LibraryMaterialCopy> libraryMaterialsDue = new ArrayList<LibraryMaterialCopy>();
for (LibraryMaterialCopy libraryMaterial : libraryMaterialsCheckedOut) {
if (libraryMaterial.getDueDate().isBefore(date) || libraryMaterial.getDueDate().equals(date)) {
libraryMaterialsDue.add(libraryMaterial);
}
}
return libraryMaterialsDue;
}
public List<LibraryMaterialCopy> getLibraryMaterialsOverdue(LocalDate todaysDate) {
return getlibraryMaterialsDueBy(todaysDate.minusDays(1));
}
public ArrayList<LibraryMaterialCopy> getLibraryMaterialsOverdue()
// default method, returns libraryMaterials overdue as of today, which means
// that they
// were due by yesterday
{
return (ArrayList<LibraryMaterialCopy>) getLibraryMaterialsOverdue(LocalDate.now());
}
public ArrayList<LibraryMaterialCopy> getLibraryMaterialsSorted()
// returns List of libraryMaterials, sorted by due date (earliest due date
// first)
// uses insertion sort
{
List<LibraryMaterialCopy> libraryMaterials = new ArrayList<LibraryMaterialCopy>(libraryMaterialsCheckedOut);
for (int i = 1; i < libraryMaterials.size(); i++) {
int j = i;
while (j > 0 && libraryMaterials.get(j - 1).getDueDate().isAfter(libraryMaterials.get(j).getDueDate())) {
// swap elements in positions j and j-1
LibraryMaterialCopy temp = libraryMaterials.get(j);
libraryMaterials.set(j, libraryMaterials.get(j - 1));
libraryMaterials.set(j - 1, temp);
j = j - 1;
}
}
return (ArrayList<LibraryMaterialCopy>) libraryMaterials;
}
}
LibraryCardManager.java
import java.util.ArrayList;
public class LibraryCardManager {
private ArrayList<LibraryCard> libraryCards;
public LibraryCardManager() {
new ArrayList<LibraryCard>();
}
public void addLibraryCard(LibraryCard card){
libraryCards.add(card);
}
public LibraryCard getCardByID(String id){
for(LibraryCard card: libraryCards){
if(card.getID().equals(id))
return card;
}
return null;
}
}
LibraryMaterial.java
public class LibraryMaterial {
private String ISBN;
private String title;
public LibraryMaterial(String i, String t) {
ISBN = i;
title = t;
}
public String getISBN() {
return ISBN;
}
public String getTitle() {
return title;
}
public void print() {
System.out.print("ISBN: " + ISBN + " title: " + title + " ");
}
public boolean isTitle(String s) {
if(this.title.equals(s))
return true;
return false;
}
}
LibraryMaterialCopy.java
import java.time.LocalDate;
public abstract class LibraryMaterialCopy {
protected LibraryCard card;
protected LocalDate dueDate;
public LibraryMaterialCopy() {
card = null;
dueDate = null;
}
public abstract LibraryMaterial getLibraryMaterial();
public abstract String getTitle();
public abstract String getISBN();
public abstract int getBorrowingWeeks();
public abstract double getFinePerDay();
public abstract boolean isRenewable();
public abstract boolean isTitle(String s);
public LibraryCard getCard() {
return card;
}
public LocalDate getDueDate() {
return dueDate;
}
public boolean checkOut(LibraryCard borrower, LocalDate dateOfBorrowing)
/*
* checks book out by setting card reference to borrower. returns false if
* book is already checked out sets due date to BORROWING_WEEKS after
* current date passed
*/
{
if (card != null)
return false;
card = borrower;
dueDate = dateOfBorrowing.plusWeeks(getBorrowingWeeks());
return true;
}
public boolean checkOut(LibraryCard borrower)
// default check out method that uses todays' date
{
return checkOut(borrower, LocalDate.now());
}
public boolean returnCopy()
// returns book by removing card reference
// returns false if there is no reference to a card
{
if (card == null)
return false;
card = null;
return true;
}
public void print() {
if (card != null) {
System.out.println("Checked out to: " + card.getCardholderName() + ", " + card.getID());
System.out.println("Due: " + dueDate);
}
}
}
Book.java
public class Book extends LibraryMaterial {
private String author;
public Book(String i, String t, String a) {
super(i, t);
author = a;
}
public String getAuthor() {
return author;
}
public void print() {
super.print();
System.out.println("author: " + author);
}
}
BookCopy.java
import java.time.*;
public class BookCopy extends LibraryMaterialCopy {
private Book book;
public static final int BORROWING_WEEKS = 3;
public static final int RENEWAL_WEEKS = 2;
public static final double FINE_PER_DAY = .10;
public static final boolean IS_RENEWABLE = true;
public BookCopy(Book b) {
super();
book = b;
}
@Override
public LibraryMaterial getLibraryMaterial() {
return book;
}
@Override
public int getBorrowingWeeks() {
return BORROWING_WEEKS;
}
@Override
public double getFinePerDay() {
return FINE_PER_DAY;
}
@Override
public String getTitle() {
return book.getTitle();
}
@Override
public String getISBN() {
return book.getISBN();
}
public String getAuthor() {
return book.getAuthor();
}
@Override
public boolean isRenewable() {
return IS_RENEWABLE;
}
public boolean renew(LocalDate renewalDate) {
if (card == null)
return false;
dueDate = renewalDate.plusWeeks(RENEWAL_WEEKS);
return true;
}
public boolean renew()
// default method uses todays date as renewal date
{
return renew(LocalDate.now());
}
public void print() {
book.print();
super.print();
}
@Override
public boolean isTitle(String s) {
if(this.book.getTitle().equals(s)) {
return true;
}
return false;
}
}
DVD.java
public class DVD extends LibraryMaterial {
private String mainActor;
public DVD(String i, String t, String mA) {
super(i, t);
mainActor = mA;
}
public String getMainActor() {
return mainActor;
}
public void print() {
super.print();
System.out.println("Main actor: " + mainActor);
}
}
DVDCopy.java
public class DVDCopy extends LibraryMaterialCopy {
public static final int BORROWING_WEEKS = 2;
public static final double FINE_PER_DAY = 1;
public static final boolean IS_RENEWABLE = false;
private DVD dvd;
public DVDCopy(DVD d) {
super();
dvd = d;
}
@Override
public LibraryMaterial getLibraryMaterial() {
return dvd;
}
@Override
public String getTitle() {
return dvd.getTitle();
}
@Override
public String getISBN() {
return dvd.getISBN();
}
public String getMainActor() {
return dvd.getMainActor();
}
@Override
public int getBorrowingWeeks() {
return BORROWING_WEEKS;
}
@Override
public double getFinePerDay() {
return FINE_PER_DAY;
}
@Override
public boolean isRenewable() {
return IS_RENEWABLE;
}
public void print() {
dvd.print();
super.print();
}
@Override
public boolean isTitle(String s) {
if(this.dvd.getTitle().equals(s))
return true;
return false;
}
}
Catalog.java
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;
public class Catalog {
HashMap<LibraryMaterial,ArrayList<LibraryMaterialCopy>> map = new HashMap<LibraryMaterial,ArrayList<LibraryMaterialCopy>>();
public void add(LibraryMaterial m,int n){
ArrayList<LibraryMaterialCopy> copies = new ArrayList<LibraryMaterialCopy>();
if(m instanceof Book){
for(int i=0;i<n;i++){
LibraryMaterialCopy c = new BookCopy((Book)m);
copies.add(c);
}
}
else{
for(int i=0;i<n;i++){
LibraryMaterialCopy c = new DVDCopy((DVD)m);
copies.add(c);
}
}
map.put(m,copies);
}
public Collection<LibraryMaterialCopy> lookUpByMaterial(LibraryMaterial m){
if(map.containsKey(m))
return map.get(m);
return null;
}
public Collection<LibraryMaterialCopy> lookUpByTitle(String title){
for (LibraryMaterial m : map.keySet()) {
if(m.getTitle().equals(title)){
return map.get(m);
}
}
return null;
}
public Collection<LibraryMaterialCopy> availableCopies(LibraryMaterial m){
ArrayList<LibraryMaterialCopy> copies = map.get(m);
ArrayList<LibraryMaterialCopy> availablecopies = new ArrayList<LibraryMaterialCopy>() ;
for(LibraryMaterialCopy c: copies){
if(c.dueDate==null)
availablecopies.add(c);
}
return availablecopies;
}
public Collection<LibraryMaterial> availableCopies(){
ArrayList<LibraryMaterial> materials = new ArrayList<LibraryMaterial>(map.keySet());
return materials;
}
}
Explanation / Answer
Made changes only in the below two Java programs. Added two new methods to handle return and renew processes.
PROGRAM CODE:
LibraryCard.java
package library;
import java.util.List;
import java.util.ArrayList;
import java.time.LocalDate;
import java.time.temporal.ChronoUnit;
public class LibraryCard {
private String id;
private String cardholderName;
private List<LibraryMaterialCopy> libraryMaterialsCheckedOut;
private double balance;
public LibraryCard(String i, String name) {
id = i;
cardholderName = name;
libraryMaterialsCheckedOut = new ArrayList<LibraryMaterialCopy>();
balance = 0;
}
public String getID() {
return id;
}
public String getCardholderName() {
return cardholderName;
}
public List<LibraryMaterialCopy> getlibraryMaterialsCheckedOut() {
return new ArrayList<LibraryMaterialCopy>(libraryMaterialsCheckedOut);
}
public void setCardholderName(String name) {
cardholderName = name;
}
public boolean checkOutLibraryMaterial(LibraryMaterialCopy libraryMaterial, LocalDate todaysDate) {
if (!libraryMaterial.checkOut(this))
return false;
libraryMaterialsCheckedOut.add(libraryMaterial);
return true;
}
public boolean checkOutLibraryMaterial(LibraryMaterialCopy libraryMaterial)
// default check out, uses today's date
{
return checkOutLibraryMaterial(libraryMaterial, LocalDate.now());
}
public boolean returnLibraryMaterial(LibraryMaterialCopy libraryMaterial, LocalDate returnDate)
// returns libraryMaterial and sends message to libraryMaterialCopy to do
// the same
// returns false if libraryMaterial is not checked out
// takes parameter that expresses the date of return
{
LocalDate dueDate = libraryMaterial.getDueDate();
if (!libraryMaterial.returnCopy())
return false;
if (!libraryMaterialsCheckedOut.remove(libraryMaterial))
return false;
long daysBetween = ChronoUnit.DAYS.between(dueDate, returnDate);
if (daysBetween > 0) // libraryMaterial is returned late
{
balance += libraryMaterial.getFinePerDay() * daysBetween;
}
return true;
}
public boolean returnLibraryMaterial(LibraryMaterialCopy libraryMaterial)
// default method, uses today's date as returns date
{
return returnLibraryMaterial(libraryMaterial, LocalDate.now());
}
public boolean renewLibraryMaterial(LibraryMaterialCopy libraryMaterial, LocalDate renewalDate)
// renews libraryMaterial. Returns false if libraryMaterial is not checked
// out already
// takes parameter that expresses date of renewal
// returns false if librayrMaterial is not a book
{
if (!libraryMaterialsCheckedOut.contains(libraryMaterial))
return false;
if (libraryMaterial.isRenewable()) {
if (!((BookCopy) libraryMaterial).renew(renewalDate))
return false;
return true;
}
return false;
}
public boolean renewLibraryMaterial(LibraryMaterialCopy libraryMaterial)
// default renewal method uses today's date as renewal date.
{
return renewLibraryMaterial(libraryMaterial, LocalDate.now());
}
public List<LibraryMaterialCopy> getlibraryMaterialsDueBy(LocalDate date)
// returns an List of libraryMaterials due on or before date
{
List<LibraryMaterialCopy> libraryMaterialsDue = new ArrayList<LibraryMaterialCopy>();
for (LibraryMaterialCopy libraryMaterial : libraryMaterialsCheckedOut) {
if (libraryMaterial.getDueDate().isBefore(date) || libraryMaterial.getDueDate().equals(date)) {
libraryMaterialsDue.add(libraryMaterial);
}
}
return libraryMaterialsDue;
}
public List<LibraryMaterialCopy> getLibraryMaterialsOverdue(LocalDate todaysDate) {
return getlibraryMaterialsDueBy(todaysDate.minusDays(1));
}
public ArrayList<LibraryMaterialCopy> getLibraryMaterialsOverdue()
// default method, returns libraryMaterials overdue as of today, which means
// that they
// were due by yesterday
{
return (ArrayList<LibraryMaterialCopy>) getLibraryMaterialsOverdue(LocalDate.now());
}
public ArrayList<LibraryMaterialCopy> getLibraryMaterialsSorted()
// returns List of libraryMaterials, sorted by due date (earliest due date
// first)
// uses insertion sort
{
List<LibraryMaterialCopy> libraryMaterials = new ArrayList<LibraryMaterialCopy>(libraryMaterialsCheckedOut);
for (int i = 1; i < libraryMaterials.size(); i++) {
int j = i;
while (j > 0 && libraryMaterials.get(j - 1).getDueDate().isAfter(libraryMaterials.get(j).getDueDate())) {
// swap elements in positions j and j-1
LibraryMaterialCopy temp = libraryMaterials.get(j);
libraryMaterials.set(j, libraryMaterials.get(j - 1));
libraryMaterials.set(j - 1, temp);
j = j - 1;
}
}
return (ArrayList<LibraryMaterialCopy>) libraryMaterials;
}
public void returnMaterials(String title2) {
for(int i=0; i<libraryMaterialsCheckedOut.size(); i++)
{
if(libraryMaterialsCheckedOut.get(i).isTitle(title2))
{
returnLibraryMaterial(libraryMaterialsCheckedOut.get(i));
break;
}
}
}
public void renewLibraryMaterial(String title3) {
for(int i=0; i<libraryMaterialsCheckedOut.size(); i++)
{
if(libraryMaterialsCheckedOut.get(i).isTitle(title3))
{
renewLibraryMaterial(libraryMaterialsCheckedOut.get(i));
break;
}
}
}
}
Main.java
package library;
import java.time.LocalDate;
import java.util.Scanner;
public class Main {
//public static Catalog catalog;
public static LibraryCardManager Card;
public static void main(String args[]) throws Exception
{
// Set up the menu for the user to choose the action to perform
Catalog catalog = new Catalog();
Scanner input = new Scanner(System.in);
int selection = 0;
System.out.println("***************** WElCOME TO THE LIBRARY *******************");
System.out.println(" Please select one of the following options: ");
System.out.println("********* ***************************************** *********");
while (selection != 9){
System.out.println("1: Add Books or DVDs to the Library's Catalog");
System.out.println("2: Add a new LibraryCard");
System.out.println("3: Display a list of the Library Catalog");
System.out.println("4: Check-Out a Book or a DVD");
System.out.println("5: Display a list of Library Materials Checked-Out by you");
System.out.println("6: Check-In a Book or DVD by Material Title");
System.out.println("7: Check-out all Books & DVDs Checked-Out by you");
System.out.println("8: Renew a Book (only)");
System.out.println("9: Exit");
selection = input.nextInt();
switch(selection)
{
case 1 :
System.out.println("How many Books or DVDs Would You like to add to the Library's Catalog?");
int Copies = input.nextInt();
System.out.println("Enter 1 for Type BOOKS | Enter 2 to type DVDS");
int C1 = input.nextInt();
System.out.println("Enter the Material's Title");
String Title = input.next();
System.out.println("Enter the Material's ISBN");
String ISBN = input.next();
if (C1 == 1){
System.out.println("Enter The Book's Author");
String Author = input.next();
Book b = new Book(Title, ISBN, Author);
catalog.add(b, Copies);
}else if (C1 == 2){
System.out.println("Enter The DVD's Main Actor");
String mainActor = input.next();
DVD d = new DVD(Title, ISBN, mainActor);
catalog.add(d, Copies);
}
break;
case 2 :
System.out.println("Enter Your Name");
String Name = input.next();
System.out.println("Enter Your ID Number");
String ID = input.next();
// creating a library card
LibraryCard card = new LibraryCard(ID, Name);
Card.addLibraryCard(card); //Original Problem
break;
case 3 :
catalog.availableCopies();
break;
case 4 :
System.out.println("Enter Your Library Card ID Number");
String ID1 = input.next();
System.out.println("Enter Title of Library Material you want to Check-Out");
String Title1 = input.next();
System.out.println("1. Book 2. DVD Enter the type");
int type = input.nextInt();
String isbn, author, mainActor;
System.out.println("Enter ISBN");
isbn = input.next();
DVD dvd;
Book book;
LibraryMaterialCopy copy;
if(type == 1)
{
System.out.println("Enter the author");
author = input.next();
book = new Book(isbn, Title1, author);
copy = new BookCopy(book);
}
else
{
System.out.println("Enter the main actor");
mainActor = input.next();
dvd = new DVD(isbn, Title1, mainActor);
copy = new DVDCopy(dvd);
}
LibraryCard CheckOutMaterial = Card.getCardByID(ID1);
//made changes here
CheckOutMaterial.checkOutLibraryMaterial(copy); //Same problem here but different object
break;
case 5 :
System.out.println("Enter Your Library Card ID Number");
String ID2 = input.next();
LibraryCard CheckedOutMaterial = Card.getCardByID(ID2);
CheckedOutMaterial.getLibraryMaterialsSorted();
break;
case 6 :
System.out.println("Enter Your Library Card ID Number");
String ID3 = input.next();
System.out.println("Enter Material's Title to be Checked-In");
String Title2 = input.next();
LibraryCard ReturnMaterial = Card.getCardByID(ID3);
ReturnMaterial.returnMaterials(Title2);
break;
case 7 :
System.out.println("Enter Your Library Card ID Number");
String ID4 = input.next();
LibraryCard ReturnMaterial1 = Card.getCardByID(ID4);
for(LibraryMaterialCopy m : ReturnMaterial1.getlibraryMaterialsCheckedOut())
{
ReturnMaterial1.returnMaterials(m.getTitle());
}
break;
case 8 :
System.out.println("Enter Your Library Card ID Number");
String ID5 = input.next();
System.out.println("Enter the Book's Title to Renew");
String Title3 = input.next();
LibraryCard RenewBook = Card.getCardByID(ID5);
RenewBook.renewLibraryMaterial(Title3);
break;
case 9:
System.exit(0);
}
}
}
}
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.