Java中HashMap獲取值的幾種方式匯總
Java HashMap獲取值的方式
1、通過keySet()方法獲取key的集合,因?yàn)樵贖ashMap中key值不能重復(fù),所以返回的是一個(gè)Set()類型。
2、通過entrySet()方法獲取鍵值對(duì)的集合,再通過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()獲得鍵值對(duì),性能較高
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è)散列表,它存儲(chǔ)的內(nèi)容是鍵值對(duì)(key-value)映射。
- HashMap 實(shí)現(xiàn)了 Map 接口,根據(jù)鍵的 HashCode 值存儲(chǔ)數(shù)據(jù),具有很快的訪問速度,最多允許一條記錄的鍵為 null,不支持線程同步。
- HashMap 是無(wú)序的,即不會(huì)記錄插入的順序。
- HashMap 繼承于AbstractMap,實(shí)現(xiàn)了 Map、Cloneable、java.io.Serializable 接口。
?? ?// 創(chuàng)建 HashMap 對(duì)象 Sites
?? ?HashMap<Integer, String> Sites = new HashMap<Integer, String>();
?? ?
?? ?// 添加鍵值對(duì)
?? ?Sites.put(1, "Google");
?? ?Sites.put(2, "Runoob");
?? ?System.out.println(Sites); // 輸出:{1=Google, 2=Runoob}
?? ?
?? ?// 我們可以使用 get(key) 方法來(lái)獲取 key 對(duì)應(yīng)的 value
?? ?System.out.println(Sites.get(2)); // 輸出:Runoob
?? ?
?? ?// 我們可以使用 remove(key) 方法來(lái)刪除 key 對(duì)應(yīng)的鍵值對(duì)(key-value)
?? ?Sites.remove(2);
?? ?
?? ?// 刪除所有鍵值對(duì)(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組件smartupload實(shí)現(xiàn)上傳文件功能
這篇文章主要為大家詳細(xì)介紹了java組件smartupload實(shí)現(xiàn)上傳文件功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-10-10
如何利用JAVA正則表達(dá)式輕松替換JSON中的大字段
這篇文章主要給大家介紹了關(guān)于如何利用JAVA正則表達(dá)式輕松替換JSON中大字段的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12
Java基于Guava Retrying實(shí)現(xiàn)重試功能
這篇文章主要介紹了Java基于Guava Retrying實(shí)現(xiàn)重試功能,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-07-07
Rxjava+Retrofit+MVP實(shí)現(xiàn)購(gòu)物車功能
這篇文章主要為大家詳細(xì)介紹了Rxjava+Retrofit+MVP實(shí)現(xiàn)購(gòu)物車功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-05-05

