文章详情页
遍历列表时将元素添加到列表中。(Java)
浏览:153日期: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 - javascript写业务有用到什么编程范式没?2. javascript - 一排三个框,各个框的间距是15px,距离外面的白框间距也是15px,这个css怎么写?3. javascript - vue 手机端项目在进入主页后 在进入子页面,直接按返回出现空白情况4. javascript - nodejs调用qiniu的第三方资源抓取,返回401 bad token,为什么5. html5 - vue-cli 装好了 新建项目的好了,找不到项目是怎么回事?6. javascript - immutable配合react提升性能?7. python3.x - python 中的maketrans在utf-8文件中该怎么使用8. javascript - jQuery post()方法,里面的请求串可以转换为GBK编码么?可以的话怎样转换?9. javascript - H5或者JS如何获得当前位置地理定位,只需要获取经纬度即可10. mysql - C#连接数据库时一直这一句出问题int i = cmd.ExecuteNonQuery();
排行榜

网公网安备