Map集合的三种遍历方式

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;

public class CollectionDemo {
	public static void main(String[] args) {
		// 创建Map集合
		Map<Integer, String> map = new HashMap<Integer, String>();
		for (int i = 0; i < 10; i++) {
			map.put(i, "map" + i);
		}
		// 对于Map集合的三种遍历方法
		
//		Map_keySet(map);
//		
//		Map_EntrySet(map);
//		
		Map_values(map);
	}

	
	/*
	 * 3.map.values() 
	 * values() 返回此地图中包含的值的Collection视图。
	 */
	private static void Map_values(Map<Integer, String> map) {
		System.out.println("---------------------map.values() -------------------");
		for(String value:map.values()) {
			System.out.println("value="+value);
		}
	}
	/*
	 * 2.Entry<key,value> map.entrySet() 
	 * Map.entrySet方法返回地图的集合视图,其元素属于此类。
	 * 获取对映射条目的引用的唯一方法是从该集合视图的迭代器
	 */
	private static void Map_EntrySet(Map<Integer, String> map) {
		System.out.println("---------------------map.entrySet()1.foreach-------------------");
		//1.foreach
		for(Entry<Integer,String> entry:map.entrySet()) {
			Integer key = entry.getKey();
			String value = entry.getValue();
			System.out.println("key=" + key + "--value=" + value);
		}
		System.out.println("---------------------map.entrySet()2.Iterator-------------------");
		//2.Iterator
		Set<Entry<Integer, String>> entrySet = map.entrySet();
		Iterator<Entry<Integer, String>> it=entrySet.iterator();
		while(it.hasNext()) {
			Entry<Integer, String> entry = it.next();
			Integer key = entry.getKey();
			String value = entry.getValue();
			System.out.println("key=" + key + "--value=" + value);
		}
	}
	/*
	 * 1.map.keySet() 
	 * keySet() 返回此地图中包含的键的Set视图。
	 */
	private static void Map_keySet(Map<Integer, String> map) {
		System.out.println("---------------------map.keySet()1.foreach-------------------");
		//1.foreach
		for(Integer key:map.keySet()) {
			System.out.println("key="+key+"--value="+map.get(key));
		}
		System.out.println("---------------------map.keySet()2.Iterator-------------------");
		//2.Iterator
		Set<Integer> keySet = map.keySet();
		Iterator<Integer> it=keySet.iterator();
		while(it.hasNext()) {
			Integer key = it.next();
			System.out.println("key="+key+"--value="+map.get(key));
		}
	}
}

猜你喜欢

转载自blog.csdn.net/elice_/article/details/82526878