测试LinkedList和ArrayList插入效率及遍历效率

1主要目的是为了比较LinkedList和ArrayList的插入效率一级遍历效率,预期的结果是LinkedList比ArrayList插入效率高,但遍历效率低,下面用代码证明下。

2、代码如下:
package com.example.test;

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

public class ListTest {
public static void main(String[] args) {

testListInsertTime("ArrayList:" , new ArrayList<>());
testListInsertTime("LinkedList:" ,new LinkedList<>());

}

public static void testListInsertTime(String type,List<Object> list) {
long begin = System.currentTimeMillis();
for (int i = 0; i < 50000; i++) {
Object o = new Object();
list.add(0,o);
}
System.out.println(type +"插入耗时" +(System.currentTimeMillis() - begin) + "ms");
long t = System.currentTimeMillis();
for (int i = 0;i<50000; i++) {
Object o = list.get(i);
}
System.out.println(type +"遍历耗时" + (System.currentTimeMillis() - t) + "ms");
}
}

3、运行结果
ArrayList:插入耗时211ms
ArrayList:遍历耗时2ms
LinkedList:插入耗时5ms
LinkedList:遍历耗时1229ms

4、事实证明插入效率,LinkedList要比ArrayList好的多;但遍历效率ArrayList比LinkedList效率要高的多。

猜你喜欢

转载自blog.csdn.net/lichuangcsdn/article/details/80842278