List:元素是有序的(怎么存的就怎么取出来,顺序不会乱),元素可以重复(角标1上有个3,角标2上也可以有个3)因为该集合体系有索引;
ArrayList:底层的数据结构使用的是数组结构(数组长度是可变的百分之五十延长)(特点是查询很快,但增删较慢)线程不同步;
LinkedList:底层的数据结构是链表结构(特点是查询较慢,增删较快)
Vector:底层是数组数据结构 线程同步(数组长度是可变的百分之百延长)(无论查询还是增删都很慢,被ArrayList替代了)。
简单代码:
public static void main(String[] args) {
String a="A",b="B",c="C",e="E",f="F";
List<String> list =new ArrayList<>();
list.add(a);//index为0
list.add(e);//1
list.add(f);//2
list.set(1, b); // 将索引位置为1的对象e修改为对象b
list.add(2, c);// 将对象c添加到索引位置为2的位置 (原来index为2的对象变为3,依次往后推)
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));// 利用get(int index)方法获得指定索引位置的对象
}
}