Java ConcurrentHashMap remove()方法

Java ConcurrentHashMap remove()方法

A. remove(Object key)

Java中ConcurrentHashmap类的 remove(Object key) 方法用于从地图中删除映射。如果键在地图中不存在,那么这个函数不做任何事情。

语法

public V remove(Object key)

参数

该方法接受一个强制性参数key,这是需要被删除的密钥。

返回值

该方法返回与key相关的前一个值。
的前一个值,如果没有键的映射,则返回null。

异常情况

如果指定的键为空,该方法会抛出NullPointerException

以下是说明remove()方法的程序。

程序1 :

// Java program to demonstrate remove() method
 
import java.util.*;
import java.util.concurrent.ConcurrentHashMap;
 
public class ConcurrentHashMapExample {
 
    public static void main(String[] args)
    {
        // Creating ConcurrentHashMap
        Map<String, String> my_cmmap
            = new ConcurrentHashMap<String, String>();
 
        // Adding elements to the map
        // using put() method
        my_cmmap.put("1", "1");
        my_cmmap.put("2", "1");
        my_cmmap.put("3", "1");
        my_cmmap.put("4", "1");
        my_cmmap.put("5", "1");
        my_cmmap.put("6", "1");
 
        // Printing the map
        System.out.println("Map: " + my_cmmap);
        System.out.println();
 
        // Removing the mapping
        // with existing key 6
        // using remove() method
        String valueRemoved = my_cmmap.remove("6");
 
        // Printing the map after remove()
        System.out.println(
            "After removing mapping with key 6:");
        System.out.println("Map: " + my_cmmap);
        System.out.println("Value removed: "
                           + valueRemoved);
        System.out.println();
 
        // Removing the mapping
        // with non-existing key 10
        // using remove() method
        valueRemoved = my_cmmap.remove("10");
 
        // Printing the map after remove()
        System.out.println(
            "After removing mapping with key 10:");
        System.out.println("Map: " + my_cmmap);
        System.out.println("Value removed: "
                           + valueRemoved);
    }
}

输出

Map: {1=1, 2=1, 3=1, 4=1, 5=1, 6=1}

After removing mapping with key 6:
Map: {1=1, 2=1, 3=1, 4=1, 5=1}
Value removed: 1

After removing mapping with key 10:
Map: {1=1, 2=1, 3=1, 4=1, 5=1}
Value removed: null

程序2: 演示空键的NullPointerException

// Java program to demonstrate remove() method
 
import java.util.*;
import java.util.concurrent.ConcurrentHashMap;
 
public class ConcurrentHashMapExample {
 
    public static void main(String[] args)
    {
        // Creating ConcurrentHashMap
        Map<String, String> my_cmmap
            = new ConcurrentHashMap<String, String>();
 
        // Adding elements to the map
        // using put() method
        my_cmmap.put("1", "1");
        my_cmmap.put("2", "1");
        my_cmmap.put("3", "1");
        my_cmmap.put("4", "1");
        my_cmmap.put("5", "1");
        my_cmmap.put("6", "1");
 
        // Printing the map
        System.out.println("Map: " + my_cmmap);
        System.out.println();
 
        try {
            // Removing the mapping with null key
            // using remove() method
            my_cmmap.remove(null);
        }
        catch (Exception e) {
            System.out.println("Exception: " + e);
        }
    }
}

输出

Map: {1=1, 2=1, 3=1, 4=1, 5=1, 6=1}

Exception: java.lang.NullPointerException

B. remove(Object key, Object value)

Java中ConcurrentHashmap类的 remove(Object key, Object value) 方法是用来从地图中删除映射的。在地图中搜索具有指定的(key, value)对的映射,如果找到了就删除,并返回true。如果键在地图中不存在,那么这个函数不做任何事情,并返回false。

语法

public boolean remove(Object key, Object value)

参数

这个方法接受两个参数

key – 与指定值相关联的键。
value – 预期与指定键相关的值。

返回值

如果该值被删除,该方法返回true。否则,它返回false。

异常情况

如果指定的键为空,该方法会抛出NullPointerException

以下是说明remove()方法的程序。

程序1 :

// Java program to demonstrate remove() method
 
import java.util.*;
import java.util.concurrent.ConcurrentHashMap;
 
public class ConcurrentHashMapExample {
 
    public static void main(String[] args)
    {
        // Creating ConcurrentHashMap
        Map<String, String> my_cmmap
            = new ConcurrentHashMap<String, String>();
 
        // Adding elements to the map
        // using put() method
        my_cmmap.put("1", "1");
        my_cmmap.put("2", "1");
        my_cmmap.put("3", "1");
        my_cmmap.put("4", "1");
        my_cmmap.put("5", "1");
        my_cmmap.put("6", "1");
 
        // Printing the map
        System.out.println("Map: " + my_cmmap);
        System.out.println();
 
        // Removing the mapping
        // with existing pair 6, 1
        // using remove() method
        boolean valueRemoved = my_cmmap.remove("6", "1");
 
        // Printing the map after remove()
        System.out.println(
            "After removing mapping with pair (6, 1):");
        System.out.println("Map: " + my_cmmap);
        System.out.println("Was value removed: "
                           + valueRemoved);
        System.out.println();
 
        // Removing the mapping
        // with non-existing pair 1, 2
        // using remove() method
        valueRemoved = my_cmmap.remove("1", "2");
 
        // Printing the map after remove()
        System.out.println(
            "After removing mapping with pair (1, 2):");
        System.out.println("Map: " + my_cmmap);
        System.out.println("Was value removed: "
                           + valueRemoved);
    }
}

输出

Map: {1=1, 2=1, 3=1, 4=1, 5=1, 6=1}

After removing mapping with pair (6, 1):
Map: {1=1, 2=1, 3=1, 4=1, 5=1}
Was value removed: true

After removing mapping with pair (1, 2):
Map: {1=1, 2=1, 3=1, 4=1, 5=1}
Was value removed: false

程序2: 演示空键的NullPointerException

// Java program to demonstrate
// remove(key, value) null key
 
import java.util.*;
import java.util.concurrent.ConcurrentHashMap;
 
public class ConcurrentHashMapExample {
 
    public static void main(String[] args)
    {
        // Creating ConcurrentHashMap
        Map<String, String> my_cmmap
            = new ConcurrentHashMap<String, String>();
 
        // Adding elements to the map
        // using put() method
        my_cmmap.put("1", "1");
        my_cmmap.put("2", "1");
        my_cmmap.put("3", "1");
        my_cmmap.put("4", "1");
        my_cmmap.put("5", "1");
        my_cmmap.put("6", "1");
 
        // Printing the map
        System.out.println("Map: " + my_cmmap);
        System.out.println();
 
        try {
            // Removing the mapping
            // with null key
            // using remove() method
            my_cmmap.remove(null, "1");
        }
        catch (Exception e) {
            System.out.println("Exception: " + e);
        }
    }
}

输出

Map: {1=1, 2=1, 3=1, 4=1, 5=1, 6=1}

Exception: java.lang.NullPointerException

程序3 :演示NullPointerException的空值。

// Java program to demonstrate
// remove(key, value) null value
 
import java.util.*;
import java.util.concurrent.ConcurrentHashMap;
 
public class ConcurrentHashMapExample {
 
    public static void main(String[] args)
    {
        // Creating ConcurrentHashMap
        Map<String, String> my_cmmap
            = new ConcurrentHashMap<String, String>();
 
        // Adding elements to the map
        // using put() method
        my_cmmap.put("1", "1");
        my_cmmap.put("2", "1");
        my_cmmap.put("3", "1");
        my_cmmap.put("4", "1");
        my_cmmap.put("5", "1");
        my_cmmap.put("6", "1");
 
        // Printing the map
        System.out.println("Map: " + my_cmmap);
 
        try {
            // Removing the mapping with correct key and
            // null value using remove() method
            my_cmmap.remove("1", null);
            my_cmmap.remove("7", null);
        }
        catch (Exception e) {
            System.out.println("Exception: " + e);
        }
    }
}

输出

Map: {1=1, 2=1, 3=1, 4=1, 5=1, 6=1}

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程