【java学习笔记13】List集合中添加元素,两种方式效率高低测试

我们都知道,List集合添加元素,有两种方式,add(value),add(index,value)。

add(value):将元素值默认添加到末尾
add(index,value):按照指定的下标,添加元素

 

写个简单的测试代码,看哪种方法效率高?

package collection;

import java.util.ArrayList;
import java.util.List;

public class ListTest02 {

    public static void main(String[] args) {

        // 统计一个方法执行耗时
        long start1 = System.currentTimeMillis();

        List list1 = new ArrayList();
        for (int i = 0; i < 100001; i++) {
            list1.add(i);
        }
        long end1 = System.currentTimeMillis();
        System.out.println("执行add()方法,添加元素到最后面,花费"+(end1 - start1)+"毫秒!");


        long start2 = System.currentTimeMillis();
        List list2 = new ArrayList(100000);
        for (int i = 0; i < 100001; i++) {
            list2.add(0,i);
        }
        long end2 = System.currentTimeMillis();
        System.out.println("执行add()方法,指定下标添加元素,花费"+(end2 - start2)+"毫秒!");



    }
}

 

循环10w次,添加10w个元素,运行结果是:

执行add()方法,添加元素到最后面,花费8毫秒!
执行add()方法,指定下标添加元素,花费486毫秒!

可以看到默认添加到末尾的方法,速度最快,效率最高。

所以除非需要按照指定下标添加元素的场景外,其余都可以用add(value)的方法,向List集合中添加元素。

 

posted @ 2021-01-02 16:36  愚人李愚  阅读(2179)  评论(0编辑  收藏  举报