3 回答

TA貢獻1772條經驗 獲得超6個贊
您只是對數組訪問有問題:
而不是使用:
public void printArray() {
for (int i = 0; i < list.size(); i++) {
System.out.println(i + " : " + " NAME: " + list.getName(i) ...);
}
}
你應該使用:
public void printArray() {
for (int i = 0; i < list.size(); i++) {
System.out.println(i + " : " + " NAME: " + list.get(i).getName() ...);
}
}
因為您想獲取特定元素的名稱,而在 OO 語言中,這通常意味著調用對象本身的方法。
在您的示例中,您有一個列表,其中包含包含名稱的對象。所以如果你想從列表中訪問名字,你需要先獲取一個元素,然后獲取他的名字。
HTH。

TA貢獻1797條經驗 獲得超6個贊
要遍歷您的列表,請使用
for (int i = 0; i < list.size(); i++) {
Positions p = list.get(i);
System.out.println(i + " : " + " NAME: " + p.getName() + " AGE: " + p.getAge() + " ID: " + p.getID());
}
或者
int index =0;
for (Positions p : list) {
System.out.println(index++ + " : " + " NAME: " + p.getName() + " AGE: " + p.getAge() + " ID: " + p.getID());
}

TA貢獻1817條經驗 獲得超14個贊
嘗試使用以下代碼更改方法。希望它會有所幫助。
public void printArray() {
for (int i = 0; i < list.size(); i++) {
System.out.println(i + " : " + " NAME: " + list.get(i).getName() + " AGE: " + list.get(i).getAge() + " ID: " list.get(i).getID());
}
}
添加回答
舉報