A DESCRIPTION OF THE REQUEST :
While you can construct
NavigableSet<EnumType> set = new TreeSet<EnumType>();
NavigableMap<EnumType, Object> map = new TreeMap<EnumType, Object>();
you can't construct
NavigableSet<EnumType> set = new EnumSet<EnumType>();
NavigableMap<EnumType, Object> map = new EnumMap<EnumType, Object>();
JUSTIFICATION :
As Enum is Comparable, this implies it has a natural order which you can use in generic sorted collection but not those collection specific to Enums which appears to be inconsistent.
Insert, update and delete on a Tree is O(log n) whereas for an Enum collection its O(1)
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
EnumSet supports the functionality which a TreeSet of enum supports
EnumMap supports the functionality which a TreeMap of enum supports.
ACTUAL -
Enum collections are not aware that enum is Comparable.
CUSTOMER SUBMITTED WORKAROUND :
Use a TreeMap and an EnumMap to get O(1) access and a sorted collection.