溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Java中怎么獲取Map集合

發(fā)布時(shí)間:2022-04-01 16:02:23 來(lái)源:億速云 閱讀:130 作者:iii 欄目:開(kāi)發(fā)技術(shù)

這篇文章主要介紹了Java中怎么獲取Map集合的相關(guān)知識(shí),內(nèi)容詳細(xì)易懂,操作簡(jiǎn)單快捷,具有一定借鑒價(jià)值,相信大家閱讀完這篇Java中怎么獲取Map集合文章都會(huì)有所收獲,下面我們一起來(lái)看看吧。

一、概述

  • Interface Map k:鍵的類型;V:值的類型

  • 將鍵映射到值的對(duì)象;不能包含重復(fù)的鍵;每個(gè)鍵可以映射到最多一個(gè)值

二、創(chuàng)建Map集合的對(duì)象方式

  • 1.使用多態(tài)的方式

  • 2.具體實(shí)現(xiàn)類HashMap

public static void main(String[] args) {
        //創(chuàng)建Map集合對(duì)象
        Map<String,String> m=new HashMap<String,String>();
        //添加元素使用put方法,默認(rèn)自然排序
        m.put("02","李四");
        m.put("04","趙六");
        m.put("01","張三");
        m.put("03","王五");
        System.out.println(m);
    }
}

三、Map集合的常用方法

方法名說(shuō)明
V put(K key,V value)添加元素,添加重復(fù)鍵值元素會(huì)覆蓋
V remove(Object key)根據(jù)鍵刪除鍵值對(duì)元素
void clear()清除所有的鍵值對(duì)元素
Boolean containsKey(Object key)判斷集合是否包含指定的鍵,包含返回true
Boolean containsValue(Object value)判斷集合是否包含指定的值,包含返回true
Boolean isEmpty()判斷集合是否為空
int size()獲取集合的長(zhǎng)度,也就是鍵值對(duì)的個(gè)數(shù)
public class MapDemo01 {
    public static void main(String[] args) {
        //創(chuàng)建Map集合對(duì)象
        Map<String,String> m=new HashMap<String,String>();
        //添加元素,put方法
        m.put("1","張三");
        m.put("2","李四");
        m.put("3","王五");
        m.put("4","趙六");
        // System.out.println(m);
        //根據(jù)鍵刪除鍵值對(duì)元素
        System.out.println(m.remove("3"));//切記鍵是什么類型就寫(xiě)什么類型,不然會(huì)返回null
        System.out.println(m);
        //清除所有鍵值對(duì)元素
        m.clear();
        //Boolean isEmpty()判斷集合是否為空
        System.out.println(m.isEmpty());
       // System.out.println(m);
        //Boolean containsKey(Object key);判斷集合中是否包含指定的鍵
        System.out.println(m.containsKey("5"));//切記鍵是什么類型就寫(xiě)什么類型,不然會(huì)返回null
        //Boolean containsValue(Object value)判斷集合是否包含指定的值,包含返回true
        System.out.println(m.containsValue("張三"));
        //int size()獲取集合的長(zhǎng)度,也就是鍵值對(duì)的個(gè)數(shù)
        System.out.println(m.size());
    }
}

四、Map的獲取方法

方法名說(shuō)明
V get(Object key)根據(jù)鍵獲取值
Set<K>keySet()獲取所有鍵的集合
Collection<V>values()獲取所有值的集合
Set<Map.Entry<K,V>>entrySet()獲取所有鍵值對(duì)對(duì)象的集合
public class MapDemo02 {
    public static void main(String[] args) {
        //創(chuàng)建Map對(duì)象
        Map<String,String> m=new HashMap<String,String>();
        //添加元素
        m.put("1","張三");
        m.put("3","李四");
        m.put("4","王五");
        m.put("2","趙六");
//        System.out.println(m);
        //V get(Object key)根據(jù)鍵獲取值
        System.out.println(m.get("3"));//要注意鍵的類型,類型不對(duì)會(huì)報(bào)null
        //Set<K>keySet()獲取所有鍵的集合,因?yàn)榉祷氐氖莻€(gè)集合,所以用增強(qiáng)for遍歷
        Set<String> k=m.keySet();
        for (String key:k){
            System.out.println(key);
        }
        //Collection<V>values()獲取所有值的集合,注意,他會(huì)按照鍵的排序?qū)χ颠M(jìn)行排序
        Collection<String> c=m.values();
        for (String v:c){
            System.out.println(v);
        }

    }
}

五、Map集合的遍歷方式

方式一:

  • 1.先獲取Map集合中的所有鍵的集合,使用方法setKey()

  • 2.遍歷所有鍵的集合獲取每一個(gè)鍵

  • 3.通過(guò)每一個(gè)鍵獲取相對(duì)應(yīng)的值 getValues方法

public static void main(String[] args) {
        //方式一
        //創(chuàng)建Map集合對(duì)象
        Map<String,String> m=new HashMap<String,String>();
        //添加鍵值對(duì)
        m.put("1","張三");
        m.put("3","李四");
        m.put("4","王五");
        m.put("2","趙六");
        //獲取所有鍵的集合
        Set<String>s=m.keySet();
        //遍歷
        for (String key:s){
            //再通過(guò)鍵獲取相對(duì)應(yīng)的值
            String value=m.get(key);
            System.out.println(key+","+value);
        }
    }
}

方式二:

  • 1.獲取所有鍵值對(duì)的集合,使用Set<Map.Entry<K,V>>entrySet()方法

  • 2.遍歷這個(gè)集合獲得每一個(gè)鍵值對(duì) 對(duì)象也就是Map.Entry對(duì)象

  • 3.再根據(jù)鍵值對(duì)對(duì)象獲取值和鍵

getKey()獲取鍵

getValue()獲取值

public static void main(String[] args) {
//        //方式一
//        //創(chuàng)建Map集合對(duì)象
//        Map<String,String> m=new HashMap<String,String>();
//        //添加鍵值對(duì)
//        m.put("1","張三");
//        m.put("3","李四");
//        m.put("4","王五");
//        m.put("2","趙六");
//        //獲取所有鍵的集合
//        Set<String>s=m.keySet();
//        //遍歷
//        for (String key:s){
//            //再通過(guò)鍵獲取相對(duì)應(yīng)的值
//            String value=m.get(key);
//            System.out.println(key+","+value);
//        }
        //方式二
        //創(chuàng)建Map集合對(duì)象
        Map<String,String> m=new HashMap<String,String>();
        //添加鍵值對(duì)
        m.put("1","張三");
        m.put("3","李四");
        m.put("4","王五");
        m.put("2","趙六");
        //獲取所有鍵值對(duì)的集合Set<Map.Entry<K,V>>entrySet()
        Set<Map.Entry<String,String>> s= m.entrySet();
        //遍歷該集合
        for (Map.Entry<String,String> ss:s){
            //通過(guò)鍵值對(duì)對(duì)象獲取鍵值
            String key=ss.getKey();
            //通過(guò)鍵值對(duì)對(duì)象獲取值
            String value=ss.getValue();
            System.out.println(key+","+value);

        }
    }
}

關(guān)于“Java中怎么獲取Map集合”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對(duì)“Java中怎么獲取Map集合”知識(shí)都有一定的了解,大家如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI