社区
Java SE
帖子详情
遍历list元素,用iterator() ,再while(hasNext()),next()有什么好处吗
crowgns
2008-07-22 04:29:07
看老大的代码需要取list里面每个元素的时候,都是
Iterator it = list.iterator();
while (it.hasNext()) {
personnelID= (String) it.next();
}
这样比我直接写for(int i=0;i<list.size();i++){
personnelId=(String)list.get(i);
}
有什么优点吗?
...全文
64522
66
打赏
收藏
遍历list元素,用iterator() ,再while(hasNext()),next()有什么好处吗
看老大的代码需要取list里面每个元素的时候,都是 Iterator it = list.iterator(); while (it.hasNext()) { personnelID= (String) it.next(); } 这样比我直接写for(int i=0;i<list.size();i++){ personnelId=(String)list.get(i); } 有什么优点吗?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
66 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
NiklausXu
2012-09-29
打赏
举报
回复
linklist增删时只需将n的前后节点相连,把n置为null即可,而arrayList增删时在先找到m元素将它删除,还要向前移动n-m-1个元素。
但是当linklist元素很多又没有索引的情况下使用linklist是不合理的。因为调用linklist.remove(Object)是很慢的,最坏的在m-1次。如果在有索引可用的情况下使用linklist.remove(int):它是先判断要删除的索引下标在链表的前半、后半部分,如果在前半部就从链表的前面开始查找,在后半部分则从后面开始查找。
NiklausXu
2012-09-29
打赏
举报
回复
[Quote=引用 35 楼 的回复:]
用iterator迭代属于面向对象编程。更加符合JAVA本身。
另外学过数据结构的都应该了解LinkedList,是以链表为基础实现,链表便于顺序访问。在操作的时候,
查快改慢
。
ArrayList,顾名思义,以数组方式实现,便与随机访问,
查慢改快
。
foreach内部实现原理也是迭代,但不方便单个数据的修改。
------------
c,c++,数据结构没及格学生……
[/Quote]
难怪你及不鸟格
shenshengzhiwen
2012-09-12
打赏
举报
回复
帽子说的还是不错的哈。
fanli586
2012-02-09
打赏
举报
回复
太牛了,我是来学习的
GSD159
2011-10-15
打赏
举报
回复
mark
btloveet
2011-08-05
打赏
举报
回复
.....................犀利!
jiangxufang
2011-04-18
打赏
举报
回复
[Quote=引用 36 楼 contra_wind 的回复:]
上面说反了
应该是:
LinkedList,是以链表为基础实现,链表便于顺序访问。在操作的时候,查慢改快。ArrayList,顾名思义,以数组方式实现,便与随机访问, 查快改慢。
[/Quote]
同意你的观点
xunzhaofenghua
2010-12-14
打赏
举报
回复
先mark,很好!
love_future
2010-07-19
打赏
举报
回复
[Quote=引用 7 楼 m_song 的回复:]
真的!
如果List为ArrayList时,这两种方式遍历差别就不大!
如果是LinkedList,反而推荐使用for!
[/Quote]
LinkedList当数据很多的时候你用get试试看,鄙视
bayerntor
2010-06-27
打赏
举报
回复
好贴,学习~~
zuoshouaini
2010-06-22
打赏
举报
回复
学习了
thriller_zw
2010-02-02
打赏
举报
回复
顶一个
chuxu000
2009-12-02
打赏
举报
回复
学习了一次,顶一下
taizhoufox
2009-10-16
打赏
举报
回复
好贴,标记一下。。
jnzw1986
2009-10-14
打赏
举报
回复
领教了。。
my0024
2009-07-30
打赏
举报
回复
路过读读 学习ing
lovetysx
2009-06-28
打赏
举报
回复
明白了,标记一个!
小爽昵称已被占用
2008-07-24
打赏
举报
回复
lz加错分了。。。。
脸红ING
crowgns
2008-07-23
打赏
举报
回复
我搞清楚了,现在在gwt做界面,只支持jdk1.4
[Quote=引用 37 楼 alloyer 的回复:]
上面两个都不怎么样,应该使用下面的形式:
List <String> arraylist = new ArrayList <String>();
for (String str:arraylist) {
System.out.println(str);
}
这做到了最好的封装性.
[/Quote]
crowgns
2008-07-23
打赏
举报
回复
我都不好意思60分了,我要加分....
加载更多回复(44)
Java 程序显示 hasNext() 和 next() 方法的用法.docx
Java是一种功能强大、可靠性高、跨平台的编程语言,适用于各种应用场景。它被广泛用于企业级应用开发、移动应用开发、云计算、大数据处理等领域,是一门值得学习和掌握的编程语言。
java使用
List
Iterator
对
List
遍历
时添加修改删除
java使用
List
Iterator
对
List
遍历
时添加修改删除
示例
iterator
使用及技巧
示例
iterator
使用及技巧,有详细例子!先由基础到应用技巧
JAVA中的
Iterator
的用法
JAVA中的
Iterator
的用法 详细讲解用法
java集合
遍历
的几种方式总结及详细比较
下面小编就为大家带来一篇java集合
遍历
的几种方式总结及详细比较。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
Java SE
62,635
社区成员
307,269
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章