【java】使用迭代器遍历List,Set,Map

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


版权声明:本文为qq_45335399原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。