1. 程式人生 > >map遍歷的兩種方式

map遍歷的兩種方式

Map介面概述 * 是一個雙列集合,儲存元素時一次儲存兩個元素。 * 一個元素稱為鍵:key * 一個元素稱為值:value * 鍵和值是成對出現的,統稱鍵值對。

Map集合的特點 * 鍵必須唯一 * 值可以重複

1.Map集合遍歷方式keySet方法

  • 通過呼叫map集合的keySet方法獲得鍵的集合

  • 通過增強for或迭代器遍歷鍵集合

  • 通過鍵獲得對應的值

    	public static void main(String[] args) {
    		// 建立Map集合
    		Map<String,String> map = new HashMap<String,String>();
    		// 儲存元素
    		map.put("name", "張三");
    		map.put("gender", "男");
    		map.put("hobby", "擼程式碼");
    		
    		// 獲得所有的鍵
    		Set<String> keySet = map.keySet();
    		// 使用增強for遍歷鍵集合
    		for (String key : keySet) {
    			System.out.println(key+"="+map.get(key));
    		}
    		// 使用迭代器遍歷鍵集合
    		Iterator<String> it =  keySet.iterator();
    		while(it.hasNext()) {
    			// 獲得鍵
    			String key = it.next();
    			// 根據鍵獲取值
    			System.out.println(key+"=" + map.get(key));
    		}
    	}
    }
    
    
    

2.Map集合遍歷方式entrySet方法

  • 通過呼叫map集合的entrySet方法獲得Entry物件集合。

  • 通過增強for或迭代器遍歷Entry物件集合。

  • 通過呼叫Entry物件的getKey方法獲得鍵,呼叫getValue方法獲得值。

          	public static void main(String[] args) {
          		// 建立Map集合
          		Map<String,String> map = new HashMap<String,String>();
          		// 儲存元素
          		map.put("name", "張三"); // new Entry("name","張三");
          		map.put("gender", "男");
          		map.put("hobby", "擼程式碼");
      		
      		// 獲得entry物件的集合
      		Set<Entry<String,String>> entrySet =  map.entrySet();
      		// 增強for遍歷entrySet集合
      		for (Entry<String, String> entry : entrySet) {
      			// 獲得鍵
      			String key = entry.getKey();
      			// 獲得值
      			String value  = entry.getValue();
      			System.out.println(key +"=" + value);
      		}
      		System.out.println("----------");
      		// 使用迭代器遍歷entrySet集合
      		Iterator<Entry<String,String>> it = entrySet.iterator();
      		while(it.hasNext()) {
      			// 獲得entry物件
      			Entry<String,String> entry = it.next();
      			System.out.println(entry.getKey() + "=" + entry.getValue());
      		}
      	}