ArrayList特点:底层使用数组数据结构,查询速度快(使用脚标查),插入删除慢(索引需要改变)
LinkedList特点:底层使用链表数据结构,查询慢(需要一个一个去问),插入删除快
Vector特点:底层数组数据结构,线程同步,被ArrayList代替了。
ArrayList
LinkedList特有的功能与first,last有关,例如 addFirst(),getFirst(),removeFirst()
Vector特有的功能与element有关的,枚举
LinkedList特点:底层使用链表数据结构,查询慢(需要一个一个去问),插入删除快
Vector特点:底层数组数据结构,线程同步,被ArrayList代替了。
ArrayList
package test;
import java.util.ArrayList;
public class ArrayListDemo {
public static void main(String[] args) {
ArrayList lists = new ArrayList();
lists.add("test01");
lists.add("test01");
lists.add("test02");
lists.add("test02");
lists = getSingleArray(lists);
System.out.println(lists);
}
private static ArrayList getSingleArray(ArrayList lists) {
ArrayList res = new ArrayList();
for(Object obj: lists){
if(!res.contains(obj)){
res.add(obj);
}
}
return res;
}
}
LinkedList特有的功能与first,last有关,例如 addFirst(),getFirst(),removeFirst()
package test;
import java.util.LinkedList;
public class LinkedListDemo {
public static void main(String[] args) {
LinkedList links = new LinkedList();
links.add("link01");
links.add("link02");
links.add("link03");
while(!links.isEmpty()){
System.out.println(links.pollFirst());
}
}
}
Vector特有的功能与element有关的,枚举
package test;
import java.util.Enumeration;
import java.util.Vector;
public class VectorDemo {
public static void main(String[] args) {
Vector v = new Vector();
v.add("vector1");
v.add("vector2");
v.add("vector3");
Enumeration e = v.elements();
while(e.hasMoreElements()){
System.out.println(e.nextElement());
}
}
}