• QQ
  • nahooten@sina.com
  • 常州市九洲新世界花苑15-2

技术天地

Java Map 多见用法举例

原创内容,转载请注明原文网址:http://homeqin.cn/a/wenzhangboke/jishutiandi/2019/0515/495.html

 

复制代码
import java.util.HashMap;import java.util.Map;public class BasicHashMap {    public static void main(String[] args) {        // 新建map
        Map<String, Integer> fstMap =  new HashMap<>();        // 存值
        fstMap.put("a", 1);
        fstMap.put("b", 2);
        fstMap.put("c", 3);
        fstMap.put("d", 4);

        System.out.println("=== fstMap 输出 ===");
        System.out.println(fstMap);

        Map<String, Integer> sndMap = new HashMap<>();

        sndMap.put("ab", 1);
        sndMap.put("cd", 2);

        System.out.println("=== aMap.putAll(bMap) ===");
        sndMap.putAll(fstMap);
        System.out.println("归并后的sndMap");
        System.out.println(sndMap);
        System.out.println("归并后的fstMap剩余");
        System.out.println(fstMap);

        System.out.println("=== map.getOrDefault(aKey, dV), 有akey则返回响应的值,否则返回dV ===");
        System.out.println(sndMap.getOrDefault("ab", 3));
        System.out.println(sndMap.getOrDefault("m", 3));
        System.out.println(sndMap);

        System.out.println("=== map.put(aKey) 重叠key===");
        System.out.println("map put重叠值,会先做get,返回对应值,再put;没有重叠值,直接put,返回null");
        System.out.println(sndMap.put("a", 5));
        System.out.println(sndMap.put("z", 10086));
        System.out.println(sndMap);

        System.out.println("=== map.remove(aKey) VS map.remove(aKey, aValue) ===");
        System.out.println("map remove(akey)操纵:要是有akey,先get返回对应的值,再delete; 否则,返回null");
        System.out.println(sndMap.remove("a"));
        System.out.println(sndMap.remove("m"));
        System.out.println("map remove(aKey, aValue)操纵,返回true or false,以评释是否remove胜利");
        System.out.println(sndMap.remove("b", 2));
        System.out.println(sndMap.remove("m", 8));
        System.out.println(sndMap);

        System.out.println("=== map.clear() ===");
        sndMap.clear();
        System.out.println(sndMap);

    }
}
复制代码

out:

复制代码
=== fstMap 输出 ==={a=1, b=2, c=3, d=4}=== aMap.putAll(bMap) ===归并后的sndMap
{ab=1, cd=2, a=1, b=2, c=3, d=4}
归并后的fstMap剩余
{a=1, b=2, c=3, d=4}=== map.getOrDefault(aKey, dV), 有akey则返回响应的值,否则返回dV ===
1
3{ab=1, cd=2, a=1, b=2, c=3, d=4}=== map.put(aKey) 重叠key===map put重叠值,会先做get,返回对应值,再put;没有重叠值,直接put,返回null1null{ab=1, cd=2, a=5, b=2, c=3, d=4, z=10086}=== map.remove(aKey) VS map.remove(aKey, aValue) ===map remove(akey)操纵:要是有akey,先get返回对应的值,再delete; 否则,返回null5nullmap remove(aKey, aValue)操纵,返回true or false,以评释是否remove胜利truefalse{ab=1, cd=2, c=3, d=4, z=10086}=== map.clear() ==={}
复制代码
 


上篇:上一篇:dedecms进阶 dede[field:**]标签申明
下篇:下一篇:Java中将InputStream读取为String