ArrayList关于for循环插入数据,数据量较大优化加快执行效率的方法

  • Post author:
  • Post category:其他
 public static void main(String[] args) {
        final int N=10000;
        Object obj=new Object();
        ArrayList list1=new ArrayList();
        long start=System.currentTimeMillis();
        for(int i=0;i<N;i++){
            list1.add(obj);
        }
        System.out.println(System.currentTimeMillis()-start);

        ArrayList list2=new ArrayList();
        long start2=System.currentTimeMillis();
        list2.ensureCapacity(N);//显示的对低层数组进行扩容
        for(int i=0;i<N;i++){
            list2.add(obj);
        }
        System.out.println(System.currentTimeMillis()-start2);
    }

通过ensureCapacity()提前的对集合的底层数组进行扩容,这样能有效的显著提高执行效率。


版权声明:本文为sinat_32849651原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。