java使用ArrayList遍历及效率比较实例分析


本文实例讲述了java使用ArrayList遍历及效率比较。分享给大家供大家参考。具体如下:

ArrayList arrL = new ArrayList();
ArrayList arrLTmp1 = new ArrayList();
ArrayList arrLTmp2 = new ArrayList();
ArrayList arrLTmp3 = new ArrayList();
ArrayList arrLTmp4 = new ArrayList();
for (int i=0;i<1000000;i++){
  arrL.add("第"+i+"个");
}
long t1 = System.nanoTime();
//方法1
Iterator it = arrL.iterator();
while(it.hasNext()){
  arrLTmp1.add(it.next());
}
long t2 = System.nanoTime();
//方法2
for(Iterator it2 = arrL.iterator();it2.hasNext();){
  arrLTmp2.add(it2.next());
}
long t3 = System.nanoTime();
//方法3
for (String vv :arrL){
  arrLTmp3.add(vv);
}
long t4 = System.nanoTime();
//方法4
for(int i=0;i
  arrLTmp4.add(arrL.get(i));
}
long t5 = System.nanoTime();
System.out.println("第一种方法耗时:" + (t2-t1)/1000 + "微秒");
System.out.println("第二种方法耗时:" + (t3-t2)/1000 + "微秒");
System.out.println("第三种方法耗时:" + (t4-t3)/1000 + "微秒");
System.out.println("第四种方法耗时:" + (t5-t4)/1000 + "微秒");

输出结果:

第一种方法耗时:143069微秒
第二种方法耗时:381666微秒
第三种方法耗时:125909微秒
第四种方法耗时:63693微秒

把上述1000000改为10,输出结果为:

第一种方法耗时:307微秒
第二种方法耗时:14微秒
第三种方法耗时:14微秒
第四种方法耗时:14微秒

希望本文所述对大家的java程序设计有所帮助。



相关阅读:
深入理解javascript作用域第二篇之词法作用域和动态作用域
单台服务器的PHP进程之间实现共享内存的方法
获取当前点击按钮的id用this.id实现
win7开机无法连接到system notification service的解决方法
win7中的Windows Easy Transfer怎么使用?
jQuery文字横向滚动效果的实现代码
Windows系统中使用C#读取文本文件内容的小示例
Win10如何禁止打开新应用时弹出的烦人提示框
JavaScript测试工具之Karma-Jasmine的安装和使用详解
MyEclipse到期破解代码分享
Android中利用matrix 控制图片的旋转、缩放、移动
XP系统怎么设置文件夹背景?XP系统设置文件夹背景的方法
浅析Node.js中的内存泄漏问题
Extjs 4.x 得到form CheckBox 复选框的值
快速导航

Copyright © 2016 phpStudy |