java LinkedList与ArrayList迭代器遍历和for遍历对比

  LinkedList是链表结构,使用迭代器遍历快,使用get(i)速度慢,

ArrayList是顺序结构,增删比LinkedList慢。

 public static void main(String[] args) {
        if(1==1){
            testArrayList();
            return;
        }
        //LinkedList_for执行时间为3
        //LinkedList_iterator执行时间为0
        LinkedList linkedList=new LinkedList();
        for(int i=0;i<100000;i++){
            linkedList.add(i);
        }
        long startTime=System.currentTimeMillis();
        for(int i=0;i iterator=linkedList.iterator();
        long startTime1=System.currentTimeMillis();
        while (iterator.hasNext()){
            int data=iterator.next();
        }
        System.out.print("LinkedList_iterator执行时间为"+""+(System.currentTimeMillis()-startTime1)/1000);
    }
 public static  void testArrayList(){
        //ArrayList_for执行时间为0
        //ArrayList_iterator执行时间为0
        ArrayList arrayList=new ArrayList();
        for(int i=0;i<7000000;i++){
            arrayList.add(i);
        }
        long startTime=System.currentTimeMillis();
        for(int i=0;i iterator=arrayList.iterator();
        long startTime1=System.currentTimeMillis();
        while (iterator.hasNext()){
            int data=iterator.next();
        }
        System.out.print("ArrayList_iterator执行时间为"+""+(System.currentTimeMillis()-startTime1)/1000);
    }

 

你可能感兴趣的:(Android)