Итак, недавно я прочитал этот пост и хочу эффективно то же самое.
Мне было все равно на «уродство» и т. д., поэтому я реализовал один из методов следующим образом:
public enum Day {
Monday(1),
Tuesday(2),
Wednesday(3),
Thursday(4),
Friday(5),
Saturday(6),
Sunday(7);
public final int id;
Day(int id) {
this.id = id;
}
public static Day getByID(int id) {
Day d = null;
for (Day dTemp : Day.values())
{
if (id == dTemp)
{
d = dTemp;
break;
}
}
return d;
}
public Day getNext() {
return values()[(ordinal()+1)%values().length];
}
public Day getPrev() {
return values()[(ordinal()-1)%values().length];
}
}
Но проблема с ним заключается в операторе if, когда я делаю:
if (id == dTemp)
Пишет, что это несовместимые типы. Что мне делать, чтобы это исправить?