HashMap merge(K, V, BiFunction) in Java

merge(K, V, BiFunction): This method is available in java.util.HashMap class of Java.

Syntax:

Integer java.util.HashMap.merge(K key, V value, BiFunction<? super V, ? super V, ? extends V> remappingFunction)

If the specified key is not already associated with a value or is associated with null, associate it with the given non-null value.

Parameters: Three parameters are required for this method.

key: key with which the resulting value is to be associated.

value: the non-null value to be merged with the existing value associated with the key or if no existing value or a null value is associated with the key, to be associated with the key.

remappingFunction: the remapping function to recompute a value if present.

Returns: the new value associated with the specified key, or null if no value is associated with the key.

Throws:

ConcurrentModificationException - if it is detected that the remapping function modified this map

Approach

Java

import java.util.HashMap;
import java.util.function.BiFunction;

public class HashMapmerge {
    public static void main(String[] args) {
        HashMap<String, Integer> hashMap =
new HashMap<String, Integer>();

        hashMap.put("Hello", 1);
        hashMap.put("World", 2);

        String key = "Java";
        Integer value = 5;
        BiFunction<? super Integer, ?
super Integer, ? extends Integer>
remappingFunction = (a, b) -> a + b;
        hashMap.merge(key, value, remappingFunction);
        System.out.println(hashMap);

    }
}

Output:

{Java=5, Hello=1, World=2}


No comments:

Post a Comment