List接口
ArrayList:本质是数组
LinkedList:本质是双向链表
vector:多线程同步是安全的,本质也是数组
stack:继承于vactor,本质是栈
Set接口(实现了不同于List的元素排序)
HashSet:使用散列表进行存储,使用散列法。(散列法:每一个关键字都有对应唯一的一个哈希值,而这个哈希值类似于数组的下坐标,并设置为ture。输出则是按照下坐标顺序输出)
TreeSet:使用树结构进行储存,使用自然顺序的升序法。
Map接口(实现了不同于List和Set的元素映射)
HashMap:使用散列表进行存储,使用散列法对key值进行排序。(这里要说一下,输出无法直接迭代hashmap,必须将hashmap放进set集合再迭代输出)
TreeMap:使用树结构进行储存,使用自然顺序的升序法对key值进行排序。
这里举例一些常见操作:
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Map.Entry;
import java.util.Set;
import java.util.TreeSet;
public class LearnList {
public void arrayList() {
ArrayList<Integer> test=new ArrayList<Integer>();
test.add(new Integer(102));
test.add(new Integer(100));
test.add(new Integer(101));
test.add(new Integer(109));
test.add(new Integer(101));
test.add(new Integer(100));
Iterator<Integer> iterator=test.iterator();
while(iterator.hasNext()) {
System.err.println("ArrayList:"+iterator.next());
}
}
public void hashSet() {
HashSet<Object> test=new HashSet<Object>();
test.add(new Integer(102));
test.add(new Integer(100));
test.add(new Integer(101));
test.add(new Integer(109));
test.add(new Integer(101));
test.add(new Integer(100));
Iterator<Object> iterator=test.iterator();
while(iterator.hasNext()) {
System.err.println("HashMap:"+iterator.next());
}
}
public void treeSet() {
TreeSet<Object> test=new TreeSet<Object>();
test.add(new Integer(102));
test.add(new Integer(100));
test.add(new Integer(101));
test.add(new Integer(109));
test.add(new Integer(101));
test.add(new Integer(100));
Iterator<Object> iterator=test.iterator();
while(iterator.hasNext()) {
System.err.println("TreeSet:"+iterator.next());
}
System.out.println("first:"+test.first());
}
public void hashMap() {
HashMap<String,Integer> test=new HashMap<String,Integer>();
test.put("1",new Integer(6));
test.put("6",new Integer(1));
test.put("5",new Integer(2));
test.put("2",new Integer(5));
test.put("4",new Integer(3));
test.put("3",new Integer(4));
// System.out.println(test);
Set<Entry<String, Integer>> set=test.entrySet();
Iterator<Entry<String, Integer>> iterator=set.iterator();
while(iterator.hasNext()) {
Entry<String, Integer> me=iterator.next();
System.err.print("HashMap:"+me.getKey());
System.err.println("="+me.getValue());
}
int old=test.get("5");
test.put("5",old+100);
System.out.println(test.get("5"));
}
public static void main(String[] args) {
new LearnList().arrayList();
new LearnList().hashSet();
new LearnList().treeSet();
new LearnList().hashMap();
}
}