Java HashMap原理及實(shí)例解析
這篇文章主要介紹了Java HashMap原理及實(shí)例解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
示例 1 : HashMap的鍵值對(duì)
HashMap儲(chǔ)存數(shù)據(jù)的方式是—— 鍵值對(duì)
package collection; import java.util.HashMap; public class TestCollection { public static void main(String[] args) { HashMap<String,String> dictionary = new HashMap<>(); dictionary.put("adc", "物理英雄"); dictionary.put("apc", "魔法英雄"); dictionary.put("t", "坦克"); System.out.println(dictionary.get("t")); } }
示例 2 : 鍵不能重復(fù),值可以重復(fù)
對(duì)于HashMap而言,key是唯一的,不可以重復(fù)的。
所以,以相同的key 把不同的value插入到 Map中會(huì)導(dǎo)致舊元素被覆蓋,只留下最后插入的元素。
不過,同一個(gè)對(duì)象可以作為值插入到map中,只要對(duì)應(yīng)的key不一樣
package collection; import java.util.HashMap; import charactor.Hero; public class TestCollection { public static void main(String[] args) { HashMap<String,Hero> heroMap = new HashMap<String,Hero>(); heroMap.put("gareen", new Hero("gareen1")); System.out.println(heroMap); //key為gareen已經(jīng)有value了,再以gareen作為key放入數(shù)據(jù),會(huì)導(dǎo)致原英雄,被覆蓋 //不會(huì)增加新的元素到Map中 heroMap.put("gareen", new Hero("gareen2")); System.out.println(heroMap); //清空map heroMap.clear(); Hero gareen = new Hero("gareen"); //同一個(gè)對(duì)象可以作為值插入到map中,只要對(duì)應(yīng)的key不一樣 heroMap.put("hero1", gareen); heroMap.put("hero2", gareen); System.out.println(heroMap); } }
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Java生成范圍內(nèi)隨機(jī)整數(shù)的三種方法
在Java中生成隨機(jī)數(shù)的場(chǎng)景有很多,下面這篇文章主要給大家介紹了關(guān)于Java生成范圍內(nèi)隨機(jī)整數(shù)的三種方法,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-07-07Mybatis中的resultType和resultMap查詢操作實(shí)例詳解
resultType是直接表示返回類型的,而resultMap則是對(duì)外部ResultMap的引用,resultMap解決復(fù)雜查詢是的映射問題。這篇文章主要介紹了Mybatis中的resultType和resultMap查詢操作實(shí)例詳解,需要的朋友可以參考下2016-09-09Java實(shí)現(xiàn)滑動(dòng)驗(yàn)證碼的示例代碼
這篇文章主要為大家介紹了如何用Java語(yǔ)言實(shí)現(xiàn)滑動(dòng)驗(yàn)證碼的生成,項(xiàng)目采用了springboot,maven等技術(shù),感興趣的小伙伴可以跟隨小編學(xué)習(xí)一下2022-02-02關(guān)于servlet向mysql添加數(shù)據(jù)時(shí)中文亂碼問題的解決
最近在工作中遇到一個(gè)小問題,出現(xiàn)了中文亂碼的問題,無(wú)奈只能想辦法解決,下面這篇文章主要給大家介紹了關(guān)于servlet向mysql添加數(shù)據(jù)時(shí)中文亂碼問題的解決方法,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面來(lái)一起看看吧。2017-08-08Elasticsearch 映射參數(shù)詳解 fields
這篇文章主要介紹了fields Elasticsearch 映射參數(shù)fields,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-07-07java數(shù)據(jù)庫(kù)開發(fā)之JDBC的完整封裝兼容多種數(shù)據(jù)庫(kù)
這篇文章主要介紹了java數(shù)據(jù)庫(kù)開發(fā)之JDBC的完整封裝兼容多種數(shù)據(jù)庫(kù),需要的朋友可以參考下2020-02-02MyBatis-Plus通過version機(jī)制實(shí)現(xiàn)樂觀鎖的思路
version機(jī)制的核心思想就是,假設(shè)發(fā)生并發(fā)沖突的幾率很低,只有當(dāng)更新數(shù)據(jù)的時(shí)候采取檢查是否有沖突,而判斷是否有沖突的依據(jù)就是version的值是否被改變了,這篇文章主要介紹了MyBatis-Plus通過version機(jī)制實(shí)現(xiàn)樂觀鎖的思路,需要的朋友可以參考下2021-09-09HashMap原理及手寫實(shí)現(xiàn)部分區(qū)塊鏈特征
這篇文章主要為大家介紹了HashMap原理及手寫實(shí)現(xiàn)部分區(qū)塊鏈特征,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-09-09Java使用正則表達(dá)式驗(yàn)證手機(jī)號(hào)和電話號(hào)碼的方法
今天小編就為大家分享一篇關(guān)于Java使用正則表達(dá)式驗(yàn)證手機(jī)號(hào)和電話號(hào)碼的方法,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2018-12-12