Java 中的 EnumMap 类
java.util.EnumMap 类是一种 Map 实现,用于处理枚举键。以下是关于 EnumMap 的重要说明 -
枚举映射中的所有键都必须来自一个枚举类型,在创建映射时(显式或隐式)对该类型进行了指定。
会按其键的自然顺序维护枚举映射。
EnumMap 未同步。如果多个线程同时访问枚举映射,并且其中至少有一个线程修改映射,则应在外部将它同步化。
以下是 EnumMap 类的构造函数 -
| 序号 | 构造函数和说明 |
|---|---|
| 1 | EnumMap(Class<K> keyType) 此构造函数创建一个带有指定键类型的空枚举映射。 |
| 2 | EnumMap(EnumMap<K,? extends V> m) 此构造函数创建一个具有与指定枚举映射相同的键类型的枚举映射,最初包含相同的映射(如果有)。 |
| 3 | EnumMap(Map<K,? extends V> m) 此构造函数创建一个从指定映射初始化的枚举映射。 |
示例
我们看一个示例 -
import java.util.EnumMap;
public class Demo {
// create an enum
public enum Numbers {
ONE, TWO, THREE, FOUR, FIVE
};
public static void main(String[] args) {
EnumMap<Numbers, String> map1 = new EnumMap<Numbers, String>(Numbers.class);
EnumMap<Numbers, String> map2 = new EnumMap<Numbers, String>(Numbers.class);
// associate values in map1
map1.put(Numbers.ONE, "1");
map1.put(Numbers.TWO, "2");
map1.put(Numbers.THREE, "3");
map1.put(Numbers.FOUR, "4");
// print the whole map
System.out.println("map1:" + map1);
// clone map1 to map2
map2 = map1.clone();
// print map2
System.out.println("map2:" + map2);
}
}输出
map1:{ONE=1, TWO=2, THREE=3, FOUR=4}
map2:{ONE=1, TWO=2, THREE=3, FOUR=4}示例
我们再看一个示例,其中我们显示 Map 中键-值映射的计数 -
import java.util.*;
public class EnumMapDemo {
// create an enum
public enum Numbers {
ONE, TWO, THREE, FOUR, FIVE
};
public static void main(String[] args) {
EnumMap<Numbers, String> map = new EnumMap<Numbers, String>(Numbers.class);
// assosiate values in map
map.put(Numbers.ONE, "1");
map.put(Numbers.TWO, "2");
map.put(Numbers.THREE, "3");
map.put(Numbers.FOUR, "4");
// print the map
System.out.println("Map: " + map);
// print the number of mappings of this map
System.out.println("Number of mappings:" + map.size());
// remove value from Numbers.THREE
map.put(Numbers.FIVE, "5");
// print the new number of mappings of this map
System.out.println("Number of mappings:" + map.size());
}
}输出
Map: {ONE=1, TWO=2, THREE=3, FOUR=4}
Number of mappings:4
Number of mappings:5
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP