Java Map集合詳解與演示
一、前言
map集合是我們常使用的集合,了解和使用map集合是必要的
二、Map介紹
基本形式: public interface Map<K,V>
Map是一個(gè)接口,我們不能直接創(chuàng)建對(duì)象,可以通過多態(tài)的形式創(chuàng)建對(duì)象,Map中有兩個(gè)
參數(shù),一個(gè)是K表示鍵,一個(gè)是V表示值,且一個(gè)鍵有且對(duì)應(yīng)一個(gè)值,Map中不能包含重復(fù)的
鍵,若是有重復(fù)的鍵添加,則會(huì)以最后一次的鍵為準(zhǔn),而其他的鍵會(huì)被覆蓋。集合都在
java.util包下,所以需要導(dǎo)包。
具體實(shí)現(xiàn)常用的一般有兩種,一是HashMap,另一個(gè)是TreeMap
import java.util.HashMap; import java.util.Map; public class MapTest { public static void main(String[] args) { Map<String,String> map=new HashMap<>(); map.put("2001", "張三"); map.put("2002", "張三"); map.put("2003", "李四"); map.put("2003", "王五");//鍵重復(fù),會(huì)覆蓋上一個(gè),留下最新的 System.out.println(map);//{2003=王五, 2002=張三, 2001=張三} } }
由上可知,map中的鍵是不能重復(fù)的,而值是可以重復(fù)的可以直接通過輸出對(duì)象來得到
集合的內(nèi)容,說明此集合內(nèi)重寫了toString方法。
三、Map的基本功能
這些功能是常見的,掌握這些即可
Map功能演示:
import java.util.HashMap; import java.util.Map; public class MapTest { public static void main(String[] args) { //創(chuàng)建Map集合對(duì)象 Map<String,String> map=new HashMap<>(); //增加元素 map.put("2001", "張三"); map.put("2002", "李四"); map.put("2003", "王五"); System.out.println(map);//{2003=王五, 2002=李四, 2001=張三} //根據(jù)鍵刪除元素 // map.remove("2001"); //System.out.println(map);//{2003=王五, 2002=李四} //判斷集合中是否包含指定的鍵返回boolean類型 System.out.println(map.containsKey("2001"));//true System.out.println(map.containsKey("2004"));//false //判斷集合中是否包含指定的值返回boolean類型 System.out.println(map.containsValue("張三"));//true System.out.println(map.containsValue("趙六"));//false //判斷集合是否為空返回boolean類型 System.out.println(map.isEmpty());//false //得到集合的長(zhǎng)度 System.out.println(map.size());//3 //清除所有鍵值對(duì) map.clear(); System.out.println(map.isEmpty());//true,為空了 } }
四、 Map集合的獲取功能
此方法多是用在遍歷集合時(shí),前三種比較常用也比較好記。
Map遍歷演示:
import java.util.HashMap; import java.util.Map; import java.util.Set; public class Maptest2 { public static void main(String[] args) { Map<String, String> map = new HashMap<>(); map.put("2001", "張三"); map.put("2002", "李四"); map.put("2003", "王五"); //遍歷集合 //方式1: // 由鍵找值,創(chuàng)建鍵的集合 Set<String> keySet=map.keySet(); //遍歷鍵的集合,得到每一個(gè)鍵 for (String key:keySet){ //由鍵找值 String value=map.get(key); //輸出鍵和值 System.out.print(key+" "+value+", "); } System.out.println("\n------------"); //方式2: //獲取所有鍵值對(duì)的集合 Set<Map.Entry<String,String>> entrySet =map.entrySet(); //遍歷鍵值對(duì)集合 for (Map.Entry<String,String> me:entrySet){ //分別得到鍵和值 String key=me.getKey(); String value=me.getValue(); System.out.print(key+" "+value+", "); } } }
如圖:
到此這篇關(guān)于Java Map集合詳解與演示的文章就介紹到這了,更多相關(guān)Java Map集合內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
java實(shí)現(xiàn)抽獎(jiǎng)功能解析
這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)抽獎(jiǎng)功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-03-03Java jwt使用公鑰字符串驗(yàn)證解析token鎖方法詳解
關(guān)于java獲取Token驗(yàn)證的問題相信很多人都遇見過,尤其是對(duì)剛接觸微信開發(fā)的人來說確實(shí)有點(diǎn)棘手,下面這篇文章主要給大家介紹了關(guān)于Java中token驗(yàn)證解析的相關(guān)資料,需要的朋友可以參考下2023-02-02SpringBoot快速入門及起步依賴解析(實(shí)例詳解)
SpringBoot?是由?Pivotal?團(tuán)隊(duì)提供的全新框架,其設(shè)計(jì)目的是用來簡(jiǎn)化?Spring?應(yīng)用的初始搭建以及開發(fā)過程,這篇文章主要介紹了SpringBoot快速入門及起步依賴解析,需要的朋友可以參考下2022-10-10IntelliJ IDEA 下載安裝超詳細(xì)教程(推薦)
這篇文章主要介紹了IntelliJ IDEA 下載安裝超詳細(xì)教程(推薦),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-02-02解析SpringCloud簡(jiǎn)介與微服務(wù)架構(gòu)
這篇文章主要介紹了SpringCloud簡(jiǎn)介與微服務(wù)架構(gòu),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-01-01同時(shí)使用@LoadBalanced?@RefreshScope注解負(fù)載均衡失效分析
這篇文章主要為大家介紹了同時(shí)使用@LoadBalanced?@RefreshScope負(fù)載均衡失效問題分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-02-02JAVA中使用JSON進(jìn)行數(shù)據(jù)傳遞示例
本篇文章主要介紹了JAVA中使用JSON進(jìn)行數(shù)據(jù)傳遞示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-01-01