📜  Java中的 EnumMap putAll(map) 方法(1)

📅  最后修改于: 2023-12-03 14:42:47.378000             🧑  作者: Mango

Java中的 EnumMap putAll(map) 方法

简介

EnumMap是Java集合框架中的一个特殊类,它实现了Map接口,并且要求键(key)必须是同一个枚举类的枚举值。EnumMapputAll(map)方法用于将另一个映射中的所有键值对添加到当前EnumMap中。

语法

下面是EnumMapputAll(map)方法的语法:

void putAll(Map<? extends K, ? extends V> map)
参数

map:要添加到当前映射中的另一个映射。

返回值

该方法没有返回值。

示例代码

以下是一个示例代码,展示了如何使用putAll(map)方法添加键值对到一个EnumMap中:

import java.util.EnumMap;
import java.util.Map;

enum Color {
    RED, GREEN, BLUE;
}

public class Main {

    public static void main(String[] args) {
        // 创建一个EnumMap
        EnumMap<Color, String> enumMap = new EnumMap<>(Color.class);

        // 创建一个普通的Map
        Map<Color, String> map = Map.of(Color.RED, "红色", Color.GREEN, "绿色", Color.BLUE, "蓝色");

        // 将map中的键值对添加到enumMap中
        enumMap.putAll(map);

        // 输出enumMap中的键值对
        for (Map.Entry<Color, String> entry : enumMap.entrySet()) {
            System.out.println(entry.getKey() + ": " + entry.getValue());
        }
    }
}

运行以上示例代码,将会输出以下结果:

RED: 红色
GREEN: 绿色
BLUE: 蓝色
注意事项
  • putAll(map)方法将会拷贝另一个映射中的所有键值对到当前EnumMap中。如果添加的映射中的键已经存在于当前EnumMap中,则会使用新的值覆盖原有值。
  • 传递给putAll(map)方法的映射不能为null
  • putAll(map)方法的时间复杂度为O(n),其中n是要添加的键值对的数量。

希望以上信息能对你有所帮助!