Jdk1.8新特性 - Map新方法

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u013379717/article/details/89641474

一、说明

    Jdk1.8中,为Map添加了一些新的方法 

二、示例

    // 原有的Put方法,是当Key存在时则替换;而putIfAbsent方法,则是当存在Key忽略Put操作不替换
    map.putIfAbsent("K1001", "K1001-1");

    // 如果Key存在,则将函数的运算结果作为这个Key对应的Value的新值Put进去
    map.computeIfPresent("K1001", (k, v) -> k + v);

    // 如果Map中不存这个Key对应个的键值对,则Put这个Key和将Key带入函数运算后的结果为Value的键值对;如果Key存在,则忽略Put操作
    map.computeIfAbsent("K1002", k -> k);
    
    // 只有当Map中键值对同时等于参数Key和Value时才执行删除
    map.remove("K1002", "K1002");
    
    // 从Map中获取指定Key的Value的值,如果不存在则返回指定的默认值
    String vle = map.getOrDefault("K1002", "V1002");
    System.out.println(vle);

    // 将Map中指定Key的Value设置为将存在值与传入值通过函数运算后的结果的新值
    map.merge("K1001", "V1001", (ov, pv) -> ov + pv);

    // 遍历 forEach 
    map.forEach((k, v) -> System.out.println(k + " --> " + v));

猜你喜欢

转载自blog.csdn.net/u013379717/article/details/89641474
今日推荐