Iterator,for,forEach的遍历和效率
来源:互联网 发布:程序员培训班怎么样 编辑:程序博客网 时间:2024/04/27 19:55
对应数据的遍历方式有很多,下面介绍下Iterator,for,forEach三种方式的遍历和执行效率问题
1.代码如下:
/** * Iterator,for,forEach比较 * @author w2cboy * date 2014-03-24 */public class Test {private static final int COUNT = 10000; private static List<Person> persons = new ArrayList<Person>(); public static void init(){//初始化,生成对象个数Person person=null;for(int i=0;i<COUNT;i++){person=new Person(i,"张三"+i,i+"");persons.add(person);}}//Iterator遍历public static long testIterator(){//开始编译执行时间long start =System.nanoTime();Person person=null;for (Iterator<Person> iterator = persons.iterator(); iterator.hasNext();) {person = (Person) iterator.next();}//执行完后的时间long end =System.nanoTime();return (end- start) / (1000);}//foEach循环遍历public static long testForEach(){//开始编译执行时间long start =System.nanoTime();Person person=null;for(Person p:persons){person=p;}//执行完后的时间long end =System.nanoTime();return (end- start) / (1000);}//for循环遍历public static long testFor(){//开始编译执行时间long start =System.nanoTime();Person person=null;for(int i=0;i<persons.size();i++){person=persons.get(i);}//执行完后的时间long end =System.nanoTime();return (end- start) / (1000); }public static void testRegxp(){}public static void main(String[] args) {init();System.out.println("Iterator迭代遍历的消耗时间为:"+testIterator());System.out.println("ForEach遍历的消耗时间为:"+testForEach());System.out.println("For循环遍历的消耗时间为:"+testFor());}}
2.测试结果:A.此结果是在10万级下测试的,此时forEach循环遍历耗时较少,For和Iterator耗时较多
B.此结果是在1万级下测试的,此时for循环遍历耗时较少,ForEach和Iterator耗时较多
综上若遍历的数据较多时,forEach效率较高,数量级较少是for循环效率较高
0 0
- Iterator,for,forEach的遍历和效率
- 测试for,foreach和Iterator遍历效率
- JAVA for和foreach 遍历的效率
- for,foreach,iterator的用法\区别\效率
- java 遍历 Iterator foreach for
- for,foreach,iterator的用法和区别
- for,foreach,iterator的用法和区别
- for,foreach,iterator的用法和区别
- for,foreach,iterator的用法和区别
- java和javascript的for,foreach,iterator
- for 、foreach和iterator的区别
- for,foreach,iterator的用法和区别
- for,foreach和iterator的区别
- for,foreach,iterator的用法和区别
- for,foreach,iterator的用法和区别
- java基础:关于遍历 -- for 、foreach 和 Iterator
- 三中遍历数组和集合的方法 for foreach iterator
- for、foreach、Iterator迭代效率
- >/dev/null 2>&1 的作用
- 河南科技学院-第五届网页设计大赛-见面会暨第一次讲课
- 【奶味香蕉蛋羹】
- 第一次新建Android Studio项目,不用在线下载gradle
- -exec和xargs的区别
- Iterator,for,forEach的遍历和效率
- Ubuntu13.10 风扇转速高 关闭独显 降低转速
- Android蓝牙连接远程蓝牙事例
- Linux命令之终端打印 - echo
- Makefile 模板
- 自学者的福音
- sdut 1595 选夫婿2!
- Java字符串之性能优化
- HDU3938 Portal 并查集