LinkedList真的比ArrayList插入效率高吗?

该代码片段对比了在不同数据规模下,ArrayList和LinkedList在30%,60%,90%位置插入元素时的性能差异。结果显示,无论数据规模如何,ArrayList的插入速度通常快于LinkedList。
摘要由CSDN通过智能技术生成
package collectionTest;

import java.util.ArrayList;
import java.util.LinkedList;

/**
 * @author : 范东升  @date : 2023/4/10
 * CONTENT:
 */
public class test {

    private static ArrayList<String> arrayList = new ArrayList<>();
    private static LinkedList<String> linkedList  = new LinkedList<>();
    private static final int T    =   900;
    private static final int SIZE =  1000;
    static {
        for (int i=0;i<SIZE;i++)
        {
            arrayList.add("测试数据");
            linkedList.add("测试数据");
        }
    }

    public static void main(String[] args) {
        testArr();
        testLink();
    }

    public static void testArr()
    {
        long p = System.nanoTime();
        arrayList.add(T,"插入");
        long q = System.nanoTime();
        Long time = q-p;
        System.out.println("ArrayList插入用时"+time+"纳秒");
    }

    public static void testLink()
    {
        long p = System.nanoTime();
        linkedList.add(T,"插入");
        long q = System.nanoTime();
        Long time = q-p;
        System.out.println("LinkedList插入用时"+time+"纳秒");
    }
}

耗时对比
ArrayListLinkedList
1000

25400纳秒

29000纳秒

30200纳秒

41200纳秒

43600纳秒

60200纳秒

100W

929000纳秒

501900纳秒

143800纳秒

2883800纳秒

4796600纳秒

1770700纳秒

1000W

9205400纳秒

5128700纳秒

1370300纳秒

20315300纳秒

24674600纳秒

8432300纳秒

三行数据分别为:

在30% 60% 90%的位置插入

结论

在三种请求下ArrayList对于插入的效率来说,怎么看都高于LinkedList

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

范范_24

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值