ArrayList【重点】
List接口特点:有序、有下标、元素可重复。
- 数组结构实现,查询快,增删慢。
- jdk1.2版本,运行快,线程不安全。
实例:
import java.util.ArrayList;
public class TestArryList {
public static void main(String[] args) {
ArrayList list1=new ArrayList();
System.out.println(list1.size());
list1.add("A");
list1.add("B");
list1.add("C");
list1.add("D");
System.out.println(list1);
System.out.println(list1.get(2));
list1.add(2,"K");
System.out.println(list1.get(2));
System.out.println(list1);
list1.clear(); //清除列表中所有元素
System.out.println(list1);
System.out.println(list1.size());
}
}
运行结果:
0
[A, B, C, D]
C
K
[A, B, K, C, D]
[]
0
Vector
- 数组结构实现,查询快,增删慢。
- jdk1.0版本,运行慢,线程安全。
LinkedList
- 链表结构实现,增删快,查询慢。
实例:
import java.util.LinkedList;
public class TestLinkedlist {
public static void main(String[] args) {
LinkedList list2=new LinkedList();
System.out.println(list2.size());
list2.add("A");
list2.add("B");
list2.add("C");
list2.add("D");
list2.add("E");
System.out.println(list2);
System.out.println(list2.size());
System.out.println(list2.get(2));
list2.addFirst("asd");
System.out.println(list2.get(0));
System.out.println(list2);
}
}
运行:
0
[A, B, C, D, E]
5
C
asd
[asd, A, B, C, D, E]