У меня есть перечисление:
public enum Persons {
CHILD,
PARENT,
GRANDPARENT;
}
Есть ли проблема с использованием метода ordinal()
для проверки "иерархии" между членами enum? Я имею в виду - есть ли недостатки при его использовании, исключая многословие, когда кто-то может случайно изменить порядок в будущем.
Или лучше сделать что-то подобное:
public enum Persons {
CHILD(0),
PARENT(1),
GRANDPARENT(2);
private Integer hierarchy;
private Persons(final Integer hierarchy) {
this.hierarchy = hierarchy;
}
public Integer getHierarchy() {
return hierarchy;
}
}