Map型別的的增刪查、判斷、迴圈輸出

昏睡的云雪發表於2024-07-17

特點:

雙鏈集合,一次儲存一對資料,分為鍵和值,鍵唯一,值可多個,鍵值對應

首先新建集合

 Map<String, String> map = new HashMap<>();

新增元素

注意該型別集合新增元素並不使用“add”而是使用“put”

        map.put("陳平安","寧姚");
        map.put("劉羨陽","賒月");
        map.put("顧璨","春宵");
        map.put("劉灞橋","蘇嫁");        

刪除指定的元素

通用“remove”,如果想要看到自己刪除的內容,可以

String delet = map.remove("劉灞橋"); //只輸入鍵,不輸入值
System.out.println(delet); //輸出刪除值
map.remove("顧璨");

當然如果想重新開始就

//清空
map.clear();
判斷
集合內是否存在該類元素的話
//判斷
        boolean keyreturn = map.containsKey("劉灞橋");  //根據鍵判斷
        boolean keyreturn1 = map.containsKey("曹慈");
        boolean valuereturn = map.containsValue("蘇嫁");  //根據值來判斷
        boolean valuereturn1 = map.containsValue("裴錢");
        System.out.println(keyreturn);  //
        System.out.println(keyreturn1);  //
        System.out.println(valuereturn);
        System.out.println(valuereturn1);

如果想要知道集合是否存在元素,則使用布林型別的資料來接收結果

//判斷集合是否為空
        boolean empty = map.isEmpty(); //當沒有清空集合元素時為假反之為真
        System.out.println(empty);

迴圈

方法一:

當只想迴圈兩個資料中的其中一個時

Set<String> keys = map.keySet(); //只關於鍵
        for (String key : keys) {
            System.out.println(key);
        }

Collection<String> values = map.values();  //只關於值
        for (String s : values) {
            System.out.println(s);
        }

都是建立介面,賦值來迴圈,都使用”增強for“的形式,如果想兩個一起迴圈的話

Set<String> keys = map.keySet();  //獲取鍵
        for (String key : keys) {
            String value = map.get(key);  //獲取鍵所對應的值
            System.out.println(key+"="+value);  //正常輸出
        }

方法二:

 Set<Map.Entry<String, String>> entries = map.entrySet();
        //如果選擇導包,在最開始的地方輸入:import java.util.Map.Entry;則在上面的第一個書名號內可以不用"Map."
        for (Map.Entry<String, String> en : entries) {
            String key = en.getKey();  //獲取鍵
            String val = en.getValue();  //獲取值
            System.out.println(key+"+"+val);  //同樣輸出全部
        }

方法三:

 map.forEach(new BiConsumer<String, String>() {  //在括號內new一個"BiC"選開頭第一個
            @Override
            public void accept(String key, String value) {  //引數根據需要看改不改
                System.out.println(key+" = "+value);
            }
        });

        System.out.println("\n"+"=============================="+"\n");
        //寫法二:lamba寫法
        map.forEach((key, value)-> System.out.println(key+" = "+value));

相關文章