我想刪除數組中的字段。 該數組包含Person
類型的對象(Person
包含名字,姓氏,出生日期和ID)。刪除數組字段(數組包含對象)
我的意圖是查找每個數組字段,並將輸入ID與所有數組字段進行比較。當我找到合適的,我將它設置爲null
。
,但我得到:
Exception in thread "main" java.lang.NullPointerException
而且我不知道爲什麼。
public static void removePerson(Person[] container) {
TextIO.putln("Enter ID of person to be removed");
int index = TextIO.getInt();
for (int i = 0 ; i < container.length ; i ++) {
if (container[i].id == index)
container[i] = null;
}
}
在「容器」的其中一個元素很可能是'null'。我們不能僅僅幫助你提供給我們的代碼,因爲'容器'沒有在那裏設置。請爲我們提供一份[SSCCE(簡短,獨立,正確(可編譯),示例)](http://sscce.org)。 – Dukeling
只需打印所有的堆棧跟蹤,你就會發現原因。你應該改變這一行:if(container [i] .id == index)'if'(container [i]!= null && container [i] .id == index)'。 –