所以我正在撰寫這個程式,它的目的是用 5 個人的 3 種型別的資訊填充一系列賬單。主要問題是當我運行程式時,它在輸入第一人的資訊后中斷。(請記住 addBill 是不同類中的方法)。
代碼在下面。我怎么能修好呢?謝謝你。
//代碼——驅動類
public static void main(String[] args){
Scanner input = new Scanner(System.in);
// Taking Doctor's Name And Capacity.
System.out.println("Enter the doctor's name: ");
String doctorName = input.nextLine();
System.out.println("Enter the capacity: ");
int capacity = input.nextInt();
// Creating A billBook Object.
// billBook information = new billBook(doctorName, capacity);
billBook[] bills = new billBook[capacity];
// Asking User To Enter Patient's Information.
for(int i = 0; i < capacity; i ){
System.out.println();
System.out.println("Bill " (i 1));
System.out.println("Enter the invoice number, patient's name, and visit date: ");
String invoiceNumber = input.nextLine();
String name = input.nextLine();
input.nextLine();
String visitDate = input.nextLine();
input.nextLine();
// bills[i].addBill(input.nextLine(), input.nextLine(), input.nextLine());
bills[i].addBill(invoiceNumber, name, visitDate);
}
}
//代碼——billBook類
// Declaring Instances.
bill[] bills;
String Doctor;
// The Constructor Methods.
billBook(){}
billBook(String Doctor, int capacity){
this.Doctor = Doctor;
bill[] bills = new bill[capacity];
}
// The GET Methods.
public String getDoctor(){
return Doctor;
}
public bill[] getBills(){
return bills;
}
// The SET Methods.
public void setDoctor(String Doctor){
this.Doctor = Doctor;
}
// The Add Bill Method.
public void addBill(String invoiceNumber, String patientName, String visitDate){
for(int i = 0; i < bills.length; i ){
bills[i] = new bill(invoiceNumber, patientName, visitDate);
}
}
// The Pay Bill Method.
public int payBill(String invoiceNumber){
for (int i = 0; i < bills.length; i ){
if(invoiceNumber.equals(bills[i].getInvoiceNumber())){
bills[i].setPaid(true);
System.out.println("Bill Is Paid.");
return 1;
}
else{
System.out.println("The Bill Is Not Found.");
}
}
return -1;
}
//代碼——票據類
// Declaring instances.
private String invoiceNumber;
private String visitDate;
private String patientName;
private boolean paid;
// The Constructor Methods.
bill(){}
bill(String invoiceNumber, String visitDate, String patientName){
this.invoiceNumber = invoiceNumber;
this.visitDate = visitDate;
this.patientName = patientName;
paid = false;
}
// The GET Methods.
public String getInvoiceNumber(){
return invoiceNumber;
}
public String getVisitDate(){
return visitDate;
}
public String getPatientName() {
return patientName;
}
public boolean isPaid() {
return paid;
}
// The SET Methods.
public void setInvoiceNumber(String invoiceNumber) {
this.invoiceNumber = invoiceNumber;
}
public void setPatientName(String patientName) {
this.patientName = patientName;
}
public void setVisitDate(String visitDate) {
this.visitDate = visitDate;
}
public void setPaid(boolean paid) {
this.paid = paid;
}
// The Printing Method.
public void printInvoice(){
if(isPaid()){
System.out.println("Invoice Number: " getInvoiceNumber()
"\nVisit Date: " getVisitDate()
"\nPatient's Name: " getPatientName()
"\nThe bill is paid.");
}
else{
System.out.println("Invoice Number: " getInvoiceNumber()
"\nVisit Date: " getVisitDate()
"\nPatient's Name: " getPatientName()
"\nThe bill is not paid.");
}
}
uj5u.com熱心網友回復:
你永遠不會初始化billBook[] bills陣列的成員,以及類中的bills陣列billBook。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/371204.html
上一篇:嘗試訪問頭函式中的私有類變數
下一篇:使欄位/屬性在類外部可讀但不可寫
