EnumMap 和 EnumSet 是不可导航的,这有什么原因吗?
2022-09-01 06:50:14
枚举是可比较的,这意味着你可以有
NavigableSet<AccessMode> modes = new TreeSet<>();
NavigableMap<AccessMode, Object> modeMap = new TreeMap<>();
这些具有O(ln N)访问时间。
枚举集合具有 O(1) 访问时间,但不可导航
NavigableSet<AccessMode> modes = EnumSet.noneOf(AccessMode.class); // doesn't compile
NavigableMap<AccessMode, Object> modeMap = new EnumMap<>(AccessMode.class); // doesn't compile
我想知道Enum集合不可导航(和排序)是否有原因。即我错过了什么吗?