Enum - constanta, сокращенное от enumeration (перечисление).
Теория
!!! Название Enum задается в единственном числе.
Нельзя назвать "Дрова", можно назвать только "Полено"
Создаем новый класс Enum, как в примере №1.
Обращаем внимание, на порядок цветов т.к. к ним кто-то может обращаться по индексу, потом будете бегать по всей программе в поиске ссылок.
Каждый Enum это объект, который может обладать своими свойствами.
Пример №1
public enum CollorCat {
WHITE, // индекс = 0
BLACK, // индекс = 1
RED, // индекс = 2
GRAU // индекс = 3
}
Понятое дело, что просто обратиться к константе (Enum) никакой практической пользы не несет, поэтому требуется иметь расшифровку константы, которую можно засунуть прям в Enum, как в примере №2.
Пример №1.1
public enum CollorCat {
WHITE("Белый"), // индекс = 0
BLACK("Черный"), // индекс = 1
RED("Рыжий"), // индекс = 2
GRAU("Серый"); // индекс = 3
private String translation;
CollorCat(String translation) { this.translation = translation; }
public String getTranslation()
{ return translation; }
}
Практика
Задаем переменные.
Пример №2
private String color; // цвет в тексте
private CollorCat colorEnum; // цвет в Enum
Получаем случайное число в заданном диапазоне.
Пример №3
public static int getRandomInteger(int min, int max) {
int x = (int) (Math.random() * ((max - min) + 1)) + min;
return x;
Создаем set запрос.
Пример №4
public void setColor(){
numerCollor = getRandomInteger(0, 3); // max зависит от Enum.
CollorCat collorCat = CollorCat.values()[numerCollor];
colorEnum = CollorCat.values()[numerCollor];
color = collorCat.getTranslation(); // эта строка вычисляема и по этому не обязательна
}
Создаем get запросы (один на Enum, второй для расшифровки)
Пример №5
public String getColor() {
CollorCat collorCat = colorEnum;
color = collorCat.getTranslation();
return color;
}
public CollorCat getColorEnum() {
return colorEnum;
}
Создаем set запрос.
Насильственный способ задать цвет
Пример №6
public void setColorEnum(CollorCat col) {
colorEnum = col;
}
Применение:
cat.setColorEnum(CollorCat.WHITE)
Здесь после точки CollorCat выбираем цвет вручную.
Используемые материалы.
Читайте и другие статьи см. оглавление.