如何从 Java 映射中移除元素

原文:https://www.studytonight.com/java-examples/how-to-remove-element-from-a-java-map

在本教程中,我们将学习如何从 Java 映射中移除元素。在 Java 中,映射是一个接口,也是 Java Collection 框架的一部分。它用于将元素收集到键和值对中。

从 Java 映射中移除元素的示例

要修改 Java Map 中的元素,我们有两个函数remove()replace().在下面的代码片段中,我们在 Map 上使用 remove()方法,它将从给定的键元素中返回一个删除的值。在我们的例子中,它将返回 68。

enlightened Map.remove(Key);移除元素并返回相应的值。

import java.util.*;
public class StudyTonight
{
    public static void main(String args[])
    {
        Map<String,Integer> map = new HashMap<>(); 

        map.put("A", 65);
        map.put("B", 66);
        map.put("C", 67);
        map.put("D", 68);
        map.put("E", 69);
        // removing
        int result = map.remove("D"); 
        System.out.println("Removed Element is : "+result);    
    }
}

移除元素为:68

从 Java 映射中移除元素的示例

在给定的示例中,我们调用了Map.remove()方法,该方法与我们在第一个示例中所做的略有不同。

如果在函数中传递的元素的键和值存在于映射中,并且此方法将移除该元素,则返回 true。但是如果相应的值不存在,并且唯一的键存在,那么它也将返回 false。

remove(Key, Value);

enlightened当且仅当键和值都存在于映射中时,它移除元素并返回真,否则它将返回假。

import java.util.*;
public class StudyTonight
{
    public static void main(String args[])
    {
        Map<String,Integer> map = new HashMap<>();            

        map.put("A", 65);
        map.put("B", 66);
        map.put("C", 67);
        map.put("D", 68);
        map.put("E", 69);         

        System.out.println(map.remove("D", 68));    
    }
}

如果我们只关心在这种情况下从映射中添加和移除元素等操作所需的时间,我们可以使用Map.replace(Key,Value);直接执行替换操作

从映射中替换元素的示例

在本例中Map.replace();方法将替换旧值“D”,即 68 到 90。您可以从下面的输出中清楚地验证这一点。当我们想要在移除操作后向映射添加新成员时,此操作非常有用。

import java.util.*;
public class StudyTonight
{
    public static void main(String args[])
    {
        Map<String,Integer> map = new HashMap<>();            

        map.put("A", 65);
        map.put("B", 66);
        map.put("C", 67);
        map.put("D", 68);
        map.put("E", 69);     
        // replace
        map.replace("D", 90); 

        System.out.println(map);    
    }
}

{A=65,B=66,C=69,D=90}

从映射中替换元素的Map.replace(Key, oldValue, newValue)示例

在本例中,如果映射元素已经存在,我们将替换它的现有值。这就是为什么我们提到参数名为旧值和新值。

import java.util.*;
public class StudyTonight
{
    public static void main(String args[])
    {
        Map<String,Integer> dictionary = new HashMap<>();            

        dictionary.put("A", 65);
        dictionary.put("B", 66);
        dictionary.put("C", 67);
        dictionary.put("D", 68);
        dictionary.put("E", 69);     

        dictionary.replace("D", 68, 5); 

        System.out.println(dictionary);    
    }
}

{A=65,B=66,C=67,D=5,E=69}

结论:

在本文中,我们学习了从映射中移除一个元素,我们可以使用Map.remove()Map.replace() 函数,这两个函数都有特定的变化来检查给定值是否存在,这导致操作更加精确。功能的所有变化如下所述:

  • Map.remove(键);
  • Map.remove(键,值);
  • 映射.替换(键,值);
  • 映射.替换(键、旧值、新值);