package cn.sxt.collection;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
/**
* 测试迭代器遍历List,Set,Map
* @author Administrator
*
*/
public class TestIterator {
public static void main(String[] args) {
testIteratorList();
System.out.println("######################");
testIteratorSet();
System.out.println("######################");
testIteratorMap();
}
public static void testIteratorList() {
List<String> list=new ArrayList<>();
list.add("aa");
list.add("bb");
list.add("cc");
list.add("dd");
//使用iterator遍历list
for(Iterator<String> iter=list.iterator();iter.hasNext();) {
String temp=iter.next();
System.out.println(temp);
}
}
public static void testIteratorSet() {
Set<String> set=new HashSet<>();
set.add("aa");
set.add("bb");
set.add("cc");
set.add("dd");
for(Iterator<String> iter=set.iterator();iter.hasNext();) {
String temp=iter.next();
System.out.println(temp);
}
}
public static void testIteratorMap() {
Map<Integer,String> map=new HashMap<>();
map.put(200,"aa");
map.put(100,"bb");
map.put(400,"cc");
map.put(300,"dd");
//第一种遍历Map的方式
Set<Entry<Integer,String>> ss=map.entrySet();
for (Iterator<Entry<Integer,String>> iter = ss.iterator(); iter.hasNext();) {
Entry<Integer,String> temp=iter.next();
System.out.println(temp);
}
System.out.println("++++++++++++++++++++++++++++++++++++++++++++++");
//第二种遍历Map的方式
Set<Integer> keySet=map.keySet();
for (Iterator iter = keySet.iterator(); iter.hasNext();) {
Integer key = (Integer) iter.next();
System.out.println(key+"="+map.get(key));
}
}
}
输出结果:
aa
bb
cc
dd
######################
aa
bb
cc
dd
######################
400=cc
100=bb
200=aa
300=dd
++++++++++++++++++++++++++++++++++++++++++++++
400=cc
100=bb
200=aa
300=dd