正確移除List中物件

2021-09-08 12:54:35 字數 621 閱讀 7376

list是乙個arraylist的物件,哪個選項的**填到//todo delete處。能夠在iterator遍歷的過程中正確並安全的刪除乙個list中儲存的物件?()

iterator it = list.iterator();

int index = 0;

while (it.hasnext())

index ++;

}

a.it.remove();

b.list.remove(obj);

c.list.remove(index);

d.list.remove(index);

選擇  a
假設在迴圈的過程中呼叫集合的remove()方法,就會導致迴圈出錯。比如:

for(int i=0;i所以,假設你想在迴圈語句中刪除集合中的某個元素。就要用迭代器iterator的remove()方法。由於它的remove()方法不僅會刪除元素。還會維護乙個標誌,用來記錄眼下是不是可刪除狀態。比如,你不能連續兩次呼叫它的remove()方法,呼叫之前至少有一次next()方法的呼叫。

迭代時移除List中的元素的正確方式

如果遇到需要迴圈刪除list中匹配的元素,相信很多小夥伴第乙個想到的辦法就是使用for迴圈遍歷,然後使用挨個比較,如果相等則刪除元素,即如下面的 所示 listlist new arraylist list.add a list.add b list.add c list.add d for int...

FireFox 正確移除 iframe

b 原諒位址 最近大量運用 iframe 的技術 不斷地產生 刪除 填入內容 移除 再度產生 移除.如此迴圈。先前取得 iframe 是用 window.frames 移除則用 el.parentnode.removechild el 與 el null。而 firefox 在第二次之後都會有錯誤,...

C 移除List 指定List 資料項

最近在coding過程中,遇到了這樣了乙個問題,有乙個list型別資料集,根據業務需求需要在這個資料集中移除所有在另乙個同型別的資料集中存在過的資料,即 移除a集合中在b集合中存在過的資料,獲得a與b的差集。在msdn查詢資料的時候,發現c 提供了乙個 list.removeall predicat...