我有一個LinkedList<JSONObject>
,我想要搜索並找到某些元素,並將它們放在列表的前面。Java LinkedList,將多個元素移動到頂部
我的實現是一系列業務的服務器響應,我需要將某個業務的特定字段放在列表頂部。有人回答了這個問題here
但是,這隻適用於移動一個元素,因爲迭代器不會指向正確的元素後,它會中斷。
什麼是正確的方式做一些非常相似的事情,但對於多個元素。我很難提出解決方案,並非常感謝幫助。謝謝。
Iterator it = list.iterator();
while (it.hasNext()) {
Object thing = it.next();
if (ThisIsTheObjectWeAreLookingFor(thing)) {
it.remove();
list.addFirst(thing);
return thing;
}
}
只需編寫一個知道如何排序元素的比較器,然後進行排序。 –
可能這也會拋出'ConcurrentModificationException',因爲你修改列表而不使用迭代器的方法? – awksp