30秒到達(dá)戰(zhàn)場(chǎng)
2023-09-20 16:20:46
ArrayList<ArrayList<String>> b = new ArrayList<ArrayList<String>>();我有一個(gè)像上面那樣的 ArrayList,其中有一堆 ArrayList 作為元素,有沒(méi)有辦法通過(guò)索引刪除其中一個(gè)?我創(chuàng)建了一個(gè)for循環(huán)來(lái)刪除其中一個(gè) ArrayList,并收到一條錯(cuò)誤消息,指出存在不兼容的類型。for(int f = 0; f < longDistanceInput.size(); f++){
ArrayList<ArrayList<String>> newLongDisinput = longDistanceInput.remove(f);
}提前致謝。
1 回答

慕森王
TA貢獻(xiàn)1777條經(jīng)驗(yàn) 獲得超3個(gè)贊
我嘗試做這樣的事情并收到一條錯(cuò)誤消息,指出類型不兼容
for(int f = 0; f<longDistanceInput.size(); f ++){ ArrayList<ArrayList<String>> newLongDisinput = longDistanceInput.remove(f);}
那是因?yàn)?code>longDistanceInput.remove(f)返回 a ArrayList<String>
,而不是 a ArrayList<ArrayList<String>>
。
嘗試:
ArrayList<String> newLongDisinput = longDistanceInput.remove(f);
但是:在向前迭代時(shí)要小心刪除內(nèi)容:您最終只會(huì)刪除列表中的一半項(xiàng)目,因?yàn)槟鷷?huì)跳過(guò)緊接著刪除的項(xiàng)目之后的項(xiàng)目。
要么反向迭代;或者只是使用longDistanceInput.remove(0)
而不是remove(f)
. 但請(qǐng)注意,從 an 的大索引末尾以外的任何內(nèi)容中刪除ArrayList
都是相當(dāng)?shù)托У模喝绻赡艿脑?,在循環(huán)結(jié)束之前不要從列表中刪除內(nèi)容。
添加回答
舉報(bào)
0/150
提交
取消