文章详情页
遍历列表时将元素添加到列表中。(Java)
浏览:84日期: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. angular.js - 不适用其他构建工具,怎么搭建angular1项目2. python如何不改动文件的情况下修改文件的 修改日期3. mysql - 一个表和多个表是多对多的关系,该怎么设计4. javascript - git clone 下来的项目 想在本地运行 npm run install 报错5. mysql主从 - 请教下mysql 主动-被动模式的双主配置 和 主从配置在应用上有什么区别?6. android-studio - Android 动态壁纸LayoutParams问题7. 主从备份 - 跪求mysql 高可用主从方案8. angular.js - 三大框架react、vue、angular的分析9. python 如何实现PHP替换图片 链接10. python - django 里自定义的 login 方法,如何使用 login_required()
排行榜
