Java中HashMap獲取值的幾種方式匯總
更新時(shí)間:2023年03月22日 10:42:50 作者:AA白菜
這篇文章主要介紹了Java中HashMap獲取值的幾種方式匯總,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
Java HashMap獲取值的方式
1、通過keySet()方法獲取key的集合,因?yàn)樵贖ashMap中key值不能重復(fù),所以返回的是一個(gè)Set()類型。
2、通過entrySet()方法獲取鍵值對的集合,再通過getKey()和getValue()方法獲取key和value。
3、通過values()方法獲取value集合,因?yàn)関alue可以重復(fù),因此返回的類型為Collection。
package com.example.demo; import java.util.Collection; import java.util.HashMap; import java.util.Map; import java.util.Set; public class Test { public static void main(String args[]) { HashMap<String, Integer> map = new HashMap<String, Integer>(); map.put("Kobe", 8); map.put("Jordan", 23); map.put("James", 6); map.put("Curry",30); map.put("Durant",35); //通過keySet()獲取key,再通過map.get(key)獲取value Set<String> set = map.keySet(); for(String str : set) { System.out.println(str + " " + map.get(str)); } System.out.println( "------------" ); //通過map.entrySet()獲得鍵值對,性能較高 Set<Map.Entry<String, Integer>> en = map.entrySet(); for(Map.Entry<String, Integer> entry : en) { System.out.println(entry.getKey() + " " + entry.getValue()); } System.out.println( "------------" ); //通過values()取值 Collection<Integer> values = map.values(); for(Integer i : values) System.out.println(i); } }
Java HashMap基本用法
- HashMap 是一個(gè)散列表,它存儲的內(nèi)容是鍵值對(key-value)映射。
- HashMap 實(shí)現(xiàn)了 Map 接口,根據(jù)鍵的 HashCode 值存儲數(shù)據(jù),具有很快的訪問速度,最多允許一條記錄的鍵為 null,不支持線程同步。
- HashMap 是無序的,即不會記錄插入的順序。
- HashMap 繼承于AbstractMap,實(shí)現(xiàn)了 Map、Cloneable、java.io.Serializable 接口。
?? ?// 創(chuàng)建 HashMap 對象 Sites ?? ?HashMap<Integer, String> Sites = new HashMap<Integer, String>(); ?? ? ?? ?// 添加鍵值對 ?? ?Sites.put(1, "Google"); ?? ?Sites.put(2, "Runoob"); ?? ?System.out.println(Sites); // 輸出:{1=Google, 2=Runoob} ?? ? ?? ?// 我們可以使用 get(key) 方法來獲取 key 對應(yīng)的 value ?? ?System.out.println(Sites.get(2)); // 輸出:Runoob ?? ? ?? ?// 我們可以使用 remove(key) 方法來刪除 key 對應(yīng)的鍵值對(key-value) ?? ?Sites.remove(2); ?? ? ?? ?// 刪除所有鍵值對(key-value)可以使用 clear 方法 ?? ?Sites.clear(); ?? ? ?? ?// 計(jì)算 HashMap 中的元素?cái)?shù)量可以使用 size() 方法 ?? ?System.out.println(Sites.size());
迭代 HashMap
?? ?// 輸出 key 和 value ?? ?for (Integer i : Sites.keySet()) { ?? ?System.out.println("key: " + i + " value: " + Sites.get(i)); ?? ?} ?? ?// 返回所有 value 值 ?? ?for(String value: Sites.values()) { ?? ?// 輸出每一個(gè)value ?? ?System.out.print(value + ", "); ?? ?}
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
java設(shè)計(jì)模式之單例模式學(xué)習(xí)
單例對象(Singleton)是一種常用的設(shè)計(jì)模式。在Java應(yīng)用中,單例對象能保證在一個(gè)JVM中,該對象只有一個(gè)實(shí)例存在2014-01-01