S K*_*mar 0 java collections enums dictionary data-structures
enum Month{JANUARY, FEBRUARY, MARCH, ...
}
enum Week{MONDAY, TUESDAY, WEDNESDAY, ...
}
Run Code Online (Sandbox Code Playgroud)
Map<Month, String> monthMap = new EnumMap<>(Month.class);
可以像这样创建简单的 EnumMap,其中键是 Enum,值是 String
但是,我想创建 EnumMap,其中键和值都是枚举类型。
Map<Month, Week> monthWeekMap = new EnumMap<>
....
创建上述枚举映射对象的语法是什么。
语法没有什么不同:
Map<Month, Week> monthWeekMap = new EnumMap<>(Month.class);
Run Code Online (Sandbox Code Playgroud)
该EnumMap
构造仅需要Class
的键类型的,以决定如何分配用于实际存储阵列(一个EnumMap
有效仅有一个强类型阵列,其长度在枚举元素的数量:这是通过获得反射); 值类型本质上是无关紧要的,因为它只是在Object
内部存储值。