Реализация Enum
compareTo()
основана на значении enum ordinal
.
ordinal
:
- примитив
final int
значение - Назначается при построении
- На основе порядка объявления перечисления
- Начиная с
0
(ноль)
Итак, если вы хотите, чтобы перечисление сортировалось в другом порядке, вы можете просто объявить их в следующем порядке:
public enum Test { D(4), C(1), B(2), A(3) }
(не уверен, какие значения вы передаете в конструктор, поэтому я сохранил ваши значения)