-2
這裏我創建了一個刪除方法,它將搜索Object數組並刪除所選對象。刪除ArrayList中的對象Java
public class DogList {
private int numItems;
private DogItem[] dogListArray;
private int position;
private String name;
DogList() {
numItems=0;
position = 0;
dogListArray = new DogItem[20];
}
DogList(String name) {
this.name = name;
}
public void deleteItem(DogList gi) {
int i = 0;
while((i < numItems) && (gi != dogListArray[i])) {
i++;
}
if(i == numItems) {
// Throw exception if there is not matching Item
throw new NoSuchElementException("That item does not exists");
}
int pos = i;
while(pos < numItems -1) {
dogListArray[pos] = dogListArray[pos + 1];
pos++;
}
numItems --;
}
我不能換我周圍爲什麼在第一while循環(gi != dogListArray[i])
拋出一個錯誤頭:「不兼容的操作數類型DogList和DogItem」
任何幫助將是美好的。 代碼很長,所以如果你想看到任何部分,我將編輯並顯示需要什麼。
不應該是'gi [i]!= dogListArray [i]'? – Checkmate
看起來像你的數組'dogListArray'包含'DogItem'類的對象。當你試圖將它與DogList進行比較時,它會返回一個錯誤。 –
如果您分享課程的完整實施,這將會很有幫助。 –