问同学一个问题,我有一个列表,该怎么遍历它呢?你会讲So easy, 用for呀,所以你会看到如下code:
for(String item : list) {
}
但是这样真的好吗?元芳你怎么看?
这里小编做了一个测试,比较了一下它和Iterator的执行效率,这不就有了这边文章。代码如下:
List<String> list = new ArrayList<String>();
int i= 0;
for(; i<10000; i++) {
list.add(String.valueOf(i));
}
Long currentMills = System.nanoTime();
for(String item : list) {
}
System.out.println("for spend time");
System.out.println(System.nanoTime() - currentMills);
Long beagin = System.nanoTime();
Iterator<String> iterator = list.iterator();
while (iterator.hasNext()) {
iterator.next();
}
System.out.println("iterator spend time");
System.out.println(System.nanoTime() - beagin);
}
执行结果如下:

是不是惊喜的发现,使用Iterator更快一些。
若您发现有什么不妥,还请八方支援,笔者感激不尽哦!!
本文通过实验对比了Java中使用for循环与Iterator遍历列表的执行效率,结果显示在大数据量下,Iterator方式略胜一筹。文章提供了详细的代码示例与执行结果,为开发者选择合适的遍历方式提供参考。
2884

被折叠的 条评论
为什么被折叠?



