文章詳情頁
遍歷列表時將元素添加到列表中。(Java)
瀏覽:107日期:2024-04-25 08:55:35
如何解決遍歷列表時將元素添加到列表中。(Java)?
Iterator除了以外,您無法在修改集合時使用進行迭代Iterator.remove()。
但是,如果使用listIterator()方法,該方法返回ListIterator,并對其進行迭代,則您還有更多要修改的選項。從javadoc中獲取add():
新元素插入到隱式光標之前:…后續調用prevIoUs()將返回新元素
鑒于此,此代碼應該可以將新元素設置為迭代中的下一個元素:
ListIterator<T> i;i.add(e);i.prevIoUs(); // returns ei.prevIoUs(); // returns element before e, and e will be next
除了列表開始為空時,這將起作用,在這種情況下,將沒有先前的元素。如果存在問題,則必須維護某種標志以指示這種情況。
解決方法我的問題是我想在遍歷新元素的同時擴展一個包含新元素的列表,并且希望迭代器繼續剛才添加的元素。
根據我的理解,ListIterator.add()會在列表中的當前元素之前而不是之后添加一個元素。是否可以通過其他方式實現這一目標?
標簽:
java
相關文章:
1. HTML5不支持frameset一般怎么解決?2. javascript - Vue的計算屬性底層依賴原理是怎么樣?3. javascript - jquery怎么給select option一個點擊時觸發的事件,如圖 如果選擇自定義觸發一個時間?4. 網頁爬蟲 - python爬蟲用BeautifulSoup爬取<s>元素并寫入字典,但某些div下沒有這一元素,導致自動寫入下一條,如何解決?5. 百度地圖api - Android百度地圖SDK,MapView上層按鈕可見卻不可觸,怎么解決?6. mysql 獲取時間函數unix_timestamp 問題?7. html5 - canvas中的mousedrag事件,為什么鼠標拖出canvas,然后再次移入canvas,drag事件還觸發8. 新入手layuiadmin,部署到tp中。想用php自已寫一個后臺管理系統。9. javascript - react 組件 使用super()報錯10. javascript - es6擴展運算符...的問題
排行榜
