河南省路桥建设集团网站,建网站公司郑州,廊坊网站网站建设,做软件是什么工作一 前言本篇内容是关于 map 新特性的一些方法使用上的介绍#xff0c;如果有不足之处欢迎补充#xff01;#xff01;二 map新特性关于以下函数式编程的函数的计算知识追寻者都使用 简单字符串代替了#xff0c;参数无非就是Key,value#xff1b;2.1 forEachforEach迭代如果有不足之处欢迎补充二 map新特性关于以下函数式编程的函数的计算知识追寻者都使用 简单字符串代替了参数无非就是Key,value2.1 forEachforEach迭代相当于for循环public static void main(String[] args) {HashMap hashMap  new HashMap();hashMap.put(key1,小熊猫);hashMap.put(key2,大熊猫);// 遍历hashMap.forEach((key,value) - {System.out.println(keykey   value: value);});}输出keykey1 value: 小熊猫keykey2 value: 大熊猫2.2 computeIfAbsentjava如果key的值不存在就使用函数结果代替值存在示例任然是使用旧值public static void main(String[] args) {HashMap hashMap  new HashMap();hashMap.put(key,无墨生香);// 如果key的值不存在就使用 函数值代替hashMap.computeIfAbsent(key,s- { return 处处香;});// {key无墨生香}System.out.println(hashMap);}值不存在示例会使用函数值代替为新值public static void main(String[] args) {HashMap hashMap  new HashMap();// 如果key的值不存在就使用 函数值代替hashMap.computeIfAbsent(key,s- { return 处处香;});// {key处处香}System.out.println(hashMap);}2.3 computeIfPresent如果key的值存在就使用函数值代替如果 函数值为null  会移除key值存在示例会使用函数值代替旧值public static void main(String[] args) {HashMap hashMap  new HashMap();hashMap.put(key,无墨生香);// 如果key的值存在就使用函数值代替hashMap.computeIfPresent(key,(key,value)- { return 处处香;});// {key4处处香}System.out.println(hashMap);}值不存在示例为空public static void main(String[] args) {HashMap hashMap  new HashMap();// 如果key的值存在就使用函数值代替hashMap.computeIfPresent(key,(key,value)- { return 处处香;});// {}System.out.println(hashMap);}如果 函数值为null  会移除keypublic static void main(String[] args) {HashMap hashMap  new HashMap();hashMap.put(key,无墨生香);// 如果key的值存在就使用函数值代替hashMap.computeIfPresent(key,(key,value)- { return null;});// {}System.out.println(hashMap);}2.4 putIfAbsent当key的值存在时不替换值当key的值不存在时替换key的值当key存在示例还是旧值public static void main(String[] args) {HashMap hashMap  new HashMap();hashMap.put(key,无墨生香);hashMap.putIfAbsent(key,处处香);//{key无墨生香}System.out.println(hashMap);}当key不存在其实就是put操作public static void main(String[] args) {HashMap hashMap  new HashMap();hashMap.putIfAbsent(key,处处香);//{key处处香}System.out.println(hashMap);}2.5 getOrDefault当key的值存在时获取值否则获取指定的默认值key值存在示例public static void main(String[] args) {HashMap hashMap  new HashMap();hashMap.put(key,无墨生香);//无墨生香System.out.println(hashMap.getOrDefault(key,处处香));}key值不存在示例public static void main(String[] args) {HashMap hashMap  new HashMap();//处处香System.out.println(hashMap.getOrDefault(key,处处香));}2.6 merge如果key的值不存在会用新的值代替,如果key的值存在会用函数值代替旧值,当函数值为空会移除key;如果key的值不存在会用新的值(第二参数)代替public static void main(String[] args) {HashMap hashMap  new HashMap();hashMap.merge(key,处处香,(key,value) - { return 点击在看;});//{key处处香}System.out.println(hashMap);}如果key的值存在会用函数值代替旧值新的值(第二参数)不起作用public static void main(String[] args) {HashMap hashMap  new HashMap();hashMap.put(key,无墨生香);hashMap.merge(key,处处香,(key,value) - { return 点击在看;});//{key点击在看}System.out.println(hashMap);}当函数值为空会移除keypublic static void main(String[] args) {HashMap hashMap  new HashMap();hashMap.put(key,无墨生香);hashMap.merge(key,处处香,(key,value) - { return null;});//{}System.out.println(hashMap);}总结到此这篇关于java8中Map的一些骚操作的文章就介绍到这了,更多相关java8中Map操作内容请搜索云海天教程以前的文章或继续浏览下面的相关文章希望大家以后多多支持云海天教程