转自:
Java之HashMap中computeIfPresent()方法具有什么功能呢?
下文将讲述HashMap中computeIfPresent方法的功能简介说明
computeIfPresent方法简介
computeIfPresent方法的功能:
对HashMap中的值进行相关计算, 当key存在时,则使用函数对其值进行逻辑处理并执行修改操作
computeIfPresent语法
hashmap.computeIfPresent(K key, BiFunction remappingFunction) ---------说明----- hashmap:我们待操作的HashMap ---------参数说明------ key:键 remappingFunction:重新计算Value值函数 ---------返回值说明------ 当key对应的value值不存在时,则返回null 当key对应的value值存在时,则使用remappingFunction函数计算,并将函数返回值返回并修改至HashMap中
例:
computeIfPresent()方法的示例分享
package com.java265; import java.util.HashMap; public class testMain { /* * java265.com HashMap之computeIfPresent方法的示例 */ public static void main(String[] args) { HashMap<Integer, String> objectName = new HashMap<Integer, String>(); objectName.putIfAbsent(11, "Java265.com"); objectName.putIfAbsent(88, "Java爱好者"); objectName.putIfAbsent(100, "Java网站"); objectName.putIfAbsent(77, "Java265.com-2"); // 键值不存在 String v1 = objectName.computeIfPresent(101, (key, value) -> value + "新value-1"); // 键值存在 String v2 = objectName.computeIfPresent(100, (key, value) -> value + "新value-2"); System.out.println("compute-1:" + v1); System.out.println("compute-2:" + v2); System.out.println("objectName:" + objectName); } } ------运行以上代码,将输出以下信息----- compute-1:null compute-2:Java网站新value-2 objectName:{100=Java网站新value-2, 88=Java爱好者, 11=Java265.com, 77=Java265.com-2}