bugl
bugl
HomeLearnPatternsPathsSearch
HomeLearnPatternsPathsSearch

Loading lesson path

Learn/Java/Java Reference
Java•Java Reference

Java HashMap computeIfAbsent() Method

Flash cards

Review the key moves

1/4
Core idea

What is the main idea behind Java HashMap computeIfAbsent() Method?

Lesson checks

Practice each idea before moving on

Short Mimo-style checks built from this lesson's code, terms, and sequence.

1Quick choice

Which statement best captures the main point of this lesson?

2Fill blank

Complete the missing token from the example code.

___ java.util.HashMap;
3Order

Put the learning moves in the order that makes the concept easiest to apply.

The computeIfAbsent() method calculates a value for a new entry based on its key.
Definition and Usage
Java HashMap computeIfAbsent() Method

❮ HashMap Methods

Example

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.computeIfAbsent("Canada", (k) -> "Toronto (" + k + ")");
    System.out.println(capitalCities);
  }
}

Definition and Usage

The computeIfAbsent() method calculates a value for a new entry based on its key. If an entry with the specified key already exists and its value is not null then the map is not changed.

The value is computed using a function, which can be defined by a lambda expression that is compatible with the apply() method of Java's Function interface.

To learn about lambda expressions, see our Java Lambda Expression tutorial .

Syntax

public void computeIfAbsent(K
key , Function
function )

K refers to the data type of the keys of the map.

Parameter Values

ParameterDescription
keyRequired. Specifies the key of the entry.
functionRequired. A Function object or lambda expression which computes the value of the entry. The function has one parameter containing the key of the entry.

Technical Details

Returns:If an entry with the specified key already exists then it returns the value of the entry, otherwise it returns the value computed by the function.

Previous

Java HashMap compute() Method

Next

Java HashMap computeIfPresent() Method