Ich weiß nicht, wie ich die borrowHolding() im Library Menu erstellen muss. Der Zweck von boreholding() ist also, dass Mitglieder Bücher oder Videos ausleihen können.Library System: Borrowing
Dies ist ein nur ein Abtastdaten des Arrays:
member[0] = new StandardMember("ID", "Name");
member[1] = new PremiumMember("ID", "Name");
holding[0] = new Book("ID", "Title");
holding[1] = new Video("ID", "Title", loanFee);
Dies ist die borrowHolding() Methode in der TestLibrary Klasse: (auch die Anordnung in der TestLibrary Klasse ist)
public static void borrowHolding(){
String option;
option = input.next();
do{
Scanner scan = new Scanner(System.in);
int tempId = 0;
System.out.println("Enter your ID: ");
String searchID = scan.next();
for(int i = 0; i < member.length; i++){
if(member[i].getID().equals(searchID)){
tempId = i;
}
}
Also für die Methode habe ich versucht, einen Code zu schreiben, der das Array durchsuchen wird, um die Mitglieds-ID zu finden, die ausleihen möchte. Es ist noch nicht abgeschlossen, weil ich glaube, ich tue es nicht richtig
Es ist ein Mitglied der Klasse, die
public class Member{
public Holding[] getCurrentHoldings(){
}
}
aus dem Namen des Verfahrens enthält, wird es verwendet, um die Bestände der Mitglieder zu speichern, geliehen. Wenn also Mitglied 1 ein Buch ausborgt, wird dieses Buch innerhalb des Arrays gespeichert, denke ich. Ich dachte daran, eine ArrayList für diese Methode zu verwenden, aber ich bin mir nicht sicher, ob das Sinn machen würde.
Um ein Buch oder ein Video auszuleihen, gibt es bestimmte Bedingungen, die man ausleihen kann, aber ich weiß nicht, wie man das in boreholding() implementiert. Eine der Bedingungen sind in der Holding-Klasse.
Und es gibt eine andere Bedingung in der Member-Klasse ist, dass das Mitglied genug Kredit haben muss, um zu borgen. Eine Buch-Leihgebühr kostet 10 $ und ein Video variiert von 4 $ oder 6 $.
Ich denke, ich habe ein paar Informationen geschrieben, die nicht benötigt werden, aber ich denke, es ist besser als weniger Informationen.
Mein Problem ist, was mache ich mit der Methode boreholding() im LibraryMenu? Wie kann ich sicherstellen, dass, wenn ein Mitglied eine Halt borgen will, wird der Betrieb unter dem Array-Mitglied geht in der Member-Klasse
public class Member{
public Holding[] getCurrentHoldings(){
}
}
mit der Bedingung aus der Halt Klasse, wenn es erfüllt wird, und während der Ausführung Mit der borrowHolding-Methode kann die Methode von der Mitgliedsklasse das Mitgliedskredit um die Leihgebühr vom Buch oder Video subtrahieren. ist es möglich?
public class Member{
private int credit = 30;
public int calculateRemainingCredit(){
credit = credit - //(the loan fee from the book or video class)
}
}