我剛剛開始使用OOP,并且正在嘗試創建一個程序,該程序創建一個數組來存儲三種不同類型的信息,即名稱,雙精度型和Int型。由于某種原因,當我運行該程序并輸入信息時,它沒有正確存儲。例如,如果我在迭代1中輸入“ James”,22.5、4,則在迭代2中輸入“ John”,23.66、8,則打印該數組,john,23.66和8將打印兩次。實際上,我希望數組中i的每次迭代都存儲一組不同的值,但是我似乎無法弄清楚為什么它不起作用。*編輯以反映答案for(int i=0; i<boats.length; i++) { System.out.printf("Name: " + boats[i].getName(name) + " " + "Age: " + boats[i].getLength(length) + " " + "Length: " + boats[i].getRating(rating) + "\n\n");}in.close();**班級代碼Public Class file public String getName(String name) { return name; } public double getLength(double length) { return length; } public int getRating(int rating) { return rating; }
1 回答

不負相思意
TA貢獻1777條經驗 獲得超10個贊
您的getter返回的是您要傳遞的參數,而不是setter存儲的值。
作為參數傳遞的變量中的值是您輸入的最后一個值,因此您將始終打印您輸入的最后一個值。
從吸氣劑中刪除參數。
public String getName() {
return name;
}
并像
boats[i].getName()
添加回答
舉報
0/150
提交
取消