package exms;
import java.util.ArrayList;
import java.util.LinkedList;
public class Test2 {
public static void main(String[] args) {
ArrayList<String> arrayList = new ArrayList<>();
arrayList.add("1");
arrayList.add(3,"1");
LinkedList<String> linkedList = new LinkedList<>();
linkedList.add("1");
linkedList.add(3,"1");
System.out.println(arrayList);
System.out.println(linkedList);
}
}
1. 首先,他们的底层数据结构不同,ArrayList底层是基于数组实现的,LinkedList底层是基于链表实现的 2. 由于底层的数据结构不同,则适用场景也是不同的,ArrayList更适合随机查找,LinkedList适合删除和添加,查询、添加。删除的时间复杂度不同 3. 另外ArrayList和LinkedList都实现了List接口,但是LinkedList还额外实现了Deque接口,所以LinkedList还可以当做队列来适用
|