package com.study;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;
import java.util.Hashtable;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.TreeMap;
import java.util.Vector;
public class IteratorClass {
public IteratorClass(){
}
// LIST类
void testArrayList(){
ArrayList list=new ArrayList();
list.add(1);
list.add(2);
list.add(3);
//用迭代器将其迭代化,将其序列化为一个序列
Iterator it=list.iterator();
while(it.hasNext()){
System.out.println(it.next());
}
}
// vector线程安全,同步
void testVector(){
Vector vector=new Vector();
vector.add(1);
vector.add(2);
vector.add(3);
Iterator it=vector.iterator();
while(it.hasNext()){
System.out.println(it.next());
}
}
// LinkedList实现list接口,允许null元素
void testLinkedList(){
LinkedList ll=new LinkedList();
ll.add(1);
ll.add(2);
ll.add(3);
Iterator it=ll.iterator();
while(it.hasNext()){
System.out.println(it.next());
}
}
// map类
void testHashMap(){
HashMap hm=new HashMap();
//hashmap及hashtable都是散列表,不可以排序,就算是排序好了,也会被打乱
hm.put("1", null);
hm.put("22", 22);
//MAP类都要先转换为最老的迭代Collection后,才能够转换为新的迭代iterator
Collection co=hm.values();
Iterator it=co.iterator();
while(it.hasNext()){
System.out.println(it.next());
}
}
//
void testHashTable(){
Hashtable ht=new Hashtable();//不可放入null
ht.put(2, "22");
Collection c=ht.values();
Iterator it=c.iterator();
while(it.hasNext()){
System.out.println(it.next());
}
}
void testTreeMap(){
TreeMap tm=new TreeMap();
tm.put(2, "222");//不能放入null
Collection c=tm.values();
Iterator it=c.iterator();
while(it.hasNext()){
System.out.println(it.next());
}
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
IteratorClass itc=new IteratorClass();
itc.testArrayList();
itc.testVector();
itc.testLinkedList();
itc.testHashMap();
itc.testHashTable();
itc.testTreeMap();
}
}