1. 程式人生 > >java--Map集合常見遍歷格式程式碼

java--Map集合常見遍歷格式程式碼

import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;

/*
 * 獲取功能:
 * V get(Object key):根據鍵獲取值
 * Set<K> keySet():獲取集合中所有鍵的集合
 * Collection<V> values():獲取集合中所有值的集合
 */
public class MapDemo2 {
	public static void main(String[] args) {
		// 建立集合物件
		Map<String, String> map = new HashMap<String, String>();

		// 建立元素並新增元素
		map.put("鄧超", "孫儷");
		map.put("黃曉明", "楊穎");
		map.put("周杰倫", "蔡依林");
		map.put("劉愷威", "楊冪");

		// V get(Object key):根據鍵獲取值
		System.out.println("get:" + map.get("周杰倫"));
		System.out.println("get:" + map.get("周杰")); // 返回null
		System.out.println("----------------------");

		// Set<K> keySet():獲取集合中所有鍵的集合
		Set<String> set = map.keySet();
		for (String key : set) {
			System.out.println(key);
		}
		System.out.println("----------------------");

		// Collection<V> values():獲取集合中所有值的集合
		Collection<String> con = map.values();
		for (String value : con) {
			System.out.println(value);
		}
	}
}
import java.util.HashMap;
import java.util.Map;
import java.util.Set;

/*
 * Map集合的遍歷。
 * Map -- 夫妻對
 * 思路:
 * 		A:把所有的丈夫給集中起來。
 * 		B:遍歷丈夫的集合,獲取得到每一個丈夫。
 * 		C:讓丈夫去找自己的妻子。
 * 
 * 轉換:
 * 		A:獲取所有的鍵
 * 		B:遍歷鍵的集合,獲取得到每一個鍵
 * 		C:根據鍵去找值
 */
public class MapDemo3 {
	public static void main(String[] args) {
		// 建立集合物件
		Map<String, String> map = new HashMap<String, String>();

		// 建立元素並新增到集合
		map.put("楊過", "小龍女");
		map.put("郭靖", "黃蓉");
		map.put("楊康", "穆念慈");
		map.put("陳玄風", "梅超風");

		// 遍歷
		// 獲取所有的鍵
		Set<String> set = map.keySet();
		// 遍歷鍵的集合,獲取得到每一個鍵
		for (String key : set) {
			// 根據鍵去找值
			String value = map.get(key);
			System.out.println(key + "---" + value);
		}
	}
}


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

/*
 * Map集合的遍歷。
 * Map -- 夫妻對
 * 
 * 思路:
 * 		A:獲取所有結婚證的集合
 * 		B:遍歷結婚證的集合,得到每一個結婚證
 * 		C:根據結婚證獲取丈夫和妻子
 * 
 * 轉換:
 * 		A:獲取所有鍵值對物件的集合
 * 		B:遍歷鍵值對物件的集合,得到每一個鍵值對物件
 * 		C:根據鍵值對物件獲取鍵和值
 * 
 * 這裡面最麻煩的就是鍵值對物件如何表示呢?
 * 看看我們開始的一個方法:
 * 		Set<Map.Entry<K,V>> entrySet():返回的是鍵值對物件的集合
 */
public class MapDemo4 {
	public static void main(String[] args) {
		// 建立集合物件
		Map<String, String> map = new HashMap<String, String>();

		// 建立元素並新增到集合
		map.put("楊過", "小龍女");
		map.put("郭靖", "黃蓉");
		map.put("楊康", "穆念慈");
		map.put("陳玄風", "梅超風");

		// 獲取所有鍵值對物件的集合
		Set<Map.Entry<String, String>> set = map.entrySet();
		// 遍歷鍵值對物件的集合,得到每一個鍵值對物件
		for (Map.Entry<String, String> me : set) {
			// 根據鍵值對物件獲取鍵和值
			String key = me.getKey();
			String value = me.getValue();
			System.out.println(key + "---" + value);
		}
	}
}