zoukankan      html  css  js  c++  java
  • JAVA——遍历

    关于遍历,发现了个坑。 详见如下:

    package com.fxl.test;
    
    import java.util.ArrayList;
    import java.util.Iterator;
    import java.util.List;
    
    public class TestLoop {
        
        
        public static void main(String[] args) {
            List<String> list = new ArrayList();
            for(int i=0;i<10000*100;i++){
                list.add("test"+i);
            }
            test1(list);
            test2(list);
        }
        public static void test1(List<String> list){
            long start = System.currentTimeMillis();
            long num = 0l;
            for(String str : list){
                num += Long.parseLong(str.replace("test", ""));
            }
            System.out.println("result:"+num + "
     use Time:"+(System.currentTimeMillis()-start)/1000);
        }
        
        public static void test2(List<String> list){
            long start = System.currentTimeMillis();
            long num = 0l;
            /*for(Iterator<String> it=list.iterator(); it.hasNext();){
                num += Long.parseLong(it.next().replace("test", ""));
                it.remove();
            }*/
            Iterator<String> it = list.iterator();
            while (it.hasNext()) {
                String str = it.next();
                num += Long.parseLong(str.replace("test", ""));
                it.remove();
            }
            
            System.out.println("result:"+num + "
     use Time:"+(System.currentTimeMillis()-start)/1000);
        }
        
    }

    运行结果:

      

    看,是不是很6,按理来说,一边遍历一边删除会少遍历一些,速度会快一些,but。。。。。。

  • 相关阅读:
    黑马程序员_java基础笔记(13)...类加载器和代理
    nyoj-411-Friends number
    nyoj-38-布线问题
    nyoj-233-Sort it
    nyoj-115-城市平乱
    nyoj-608-畅通工程
    nyoj-36-最长公共子序列
    nyoj-150-Train Problem I
    nyoj-494-Dancing With the Googlers
    nyoj-214-单调递增子序列(二)
  • 原文地址:https://www.cnblogs.com/FancyLian/p/9929461.html
Copyright © 2011-2022 走看看