Remove Key from HashMap in Java



In this article, we will learn how to remove a specific key from a HashMap in Java. By doing this, we can dynamically update the contents of the map, which is helpful in many data manipulation scenarios.

We will demonstrate two different approaches: one that uses the straightforward remove() method to delete a specific key, and another that leverages an iterator to find and remove the key based on a condition while iterating. Each approach allows us to efficiently manage data in HashMap based on different requirements.

Problem Statement

Given a HashMap with key-value pairs, write Java programs to remove a specific key ?

Input

Elements in HashMap...
[Frames=800, Belt=600, Wallet=700, Bag=1100, Sunglasses=2000]

Output

Elements in HashMap...
[Frames=800, Belt=600, Wallet=700, Bag=1100, Sunglasses=2000]

Updated HashMap after removing a key...
{Frames=800, Belt=600, Bag=1100, Sunglasses=2000}

Different approaches

Following are the different approaches to remove a key from a HashMap ?

Using the remove() method

Following are the steps to remove a key from a HashMap using the remove() method ?

  • First we will import all the classes from the java.util package.
  • We initialize the HashMap and add several key-value pairs, where each item represents an object (like "Bag" or "Wallet") with an associated price.
  • Before removing any items, we print the initial contents of the HashMap to show all key-value pairs.
  • Using remove() method of HashMap class we delete the entry with the key "Wallet" from the HashMap.
  • After removing the key, we print the HashMap again to show the updated content without the "Wallet" entry.

Example

The following is an example of removing a key from a HashMap ?

import java.util.*;
public class Demo {
   public static void main(String args[]) {
      // Create a hash map
      HashMap hm = new HashMap();
      // Put elements to the map
      hm.put("Bag", new Integer(1100));
      hm.put("Sunglasses", new Integer(2000));
      hm.put("Frames", new Integer(800));
      hm.put("Wallet", new Integer(700));
      hm.put("Belt", new Integer(600));
      System.out.println("Elements in HashMap...");
      System.out.println(hm);
      hm.remove("Wallet");
      System.out.println("\nUpdated HashMap after removing a key...");
      System.out.println(hm);
   }
}

Output

Elements in HashMap...
[Frames=800, Belt=600, Wallet=700, Bag=1100, Sunglasses=2000]

Updated HashMap after removing a key...
{Frames=800, Belt=600, Bag=1100, Sunglasses=2000}

Using an iterator

Following are the steps of removing a key from a HashMap using an iterator ?

  • First we will import the HashMap, Iterator, and Map class from java.util package.
  • We will initialize the HashMap and add key-value pairs.
  • We will use an iterator to loop through the HashMap.
  • To remove a key while iterating if a certain conditionis met for this we will use the if statement.
  • Print the HashMap before and after the removal.

Example

The following is an example of removing a key from a HashMap ?

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;

public class Demo {
    public static void main(String[] args) {
        // Creating a HashMap
        HashMap<String, Integer> map = new HashMap<>();
        
        // Adding elements to HashMap
        map.put("Apple", 100);
        map.put("Banana", 150);
        map.put("Grapes", 200);
        
        System.out.println("Original Map: " + map);
        
        // Using an iterator to remove a key
        Iterator<Map.Entry<String, Integer>> iterator = map.entrySet().iterator();
        while (iterator.hasNext()) {
            Map.Entry<String, Integer> entry = iterator.next();
            if (entry.getKey().equals("Banana")) {
                iterator.remove();  // Removes "Banana" from the map
            }
        }
        
        System.out.println("Updated Map after iterator removal: " + map);
    }
}

Output

Original Map: {Apple=100, Grapes=200, Banana=150}
Updated Map after iterator removal: {Apple=100, Grapes=200}
Updated on: 2024-11-07T01:07:01+05:30

656 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements