Java HashMap compute() Method
Example
Compute a new value for an entry in a map:
import java.util.HashMap;
public class Main {
public static void main(String[] args) {
HashMap<String, String> capitalCities = new HashMap<String, String>();
capitalCities.put("England", "London");
capitalCities.put("Germany", "Berlin");
capitalCities.put("Norway", "Oslo");
capitalCities.put("USA", "Washington DC");
capitalCities.compute("England", (k, v) -> v + "(" + k + ")");
System.out.println(capitalCities);
}
}
Definition and Usage
The compute()
method changes the value of an entry or creates a new value if the entry does not exist.
The new value is computed using a function, which can be defined by a lambda expression that is compatible with the apply()
method of Java's BiFunction
interface.
To learn about lambda expressions, see our Java Lambda Expression tutorial.
Syntax
public void compute(K key, BiFunction function)
K
refers to the data type of the keys of the map.
Parameter Values
Parameter | Description |
---|---|
key | Required. Specifies the key of the entry. |
function |
Required. A BiFunction object or lambda expression which computes the value of the entry.The first parameter of the function contains the key of an entry and the second parameter contains its value. |
Technical Details
Returns: | The value computed by the function. |
---|
Related Pages
❮ HashMap Methods