首页 > 代码库 > java中的Iterator与增强for循环的效率比较
java中的Iterator与增强for循环的效率比较
最近在优化代码时遇到了这个问题:Iterator与增强for循环到底哪个效率高?之前在学习的时候,好像记着老师说过遍历集合(如list)时,使用iterator好像正规一些,因为是专用的,但是运行效率问题确实不曾考虑,今天做了一个实验:对两者进行了简单的比较,得出的结论是:增强for循环运行效率更高一些。但是我不确定这是否会代表全部情况,这里仅仅记录一下,做个参考,后期有新的认识再来补充,欢迎大家批评指正。
1 public static void main(String[] args) { 2 test(); 3 } 4 5 public static void test() { 6 7 List<Integer> list = new ArrayList<Integer>(); 8 int flag = 100000; 9 int i=0; 10 while(i<flag) { 11 list.add(i); 12 i++; 13 } 14 15 // iterator测试 16 long start = System.currentTimeMillis(); 17 Iterator<Integer> iterator = list.iterator(); 18 while(iterator.hasNext()) { 19 System.out.print(iterator.next()); 20 } 21 long end = System.currentTimeMillis(); 22 System.out.println("iterator本次执行耗费了"+(end-start)+"毫秒"); 23 24 // 增强for循环测试 25 long start2 = System.currentTimeMillis(); 26 for(Integer inte : list) { 27 System.out.print(inte); 28 } 29 long end2 = System.currentTimeMillis(); 30 System.out.println("for本次执行耗费了"+(end2-start2)+"毫秒"); 31 }
运行结果为:
java中的Iterator与增强for循环的效率比较
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。