Sobes.tech
Назад к вопросам
Senior
7

Какие предопределённые методы есть в enum?

Компании, где спрашивали
СБЕРСБЕР

Ответ от нейросети

sobes.tech AI

В Java каждый enum неявно наследуется от класса java.lang.Enum, который предоставляет несколько предопределённых методов:

  • values() — возвращает массив всех констант enum в порядке их объявления.
  • valueOf(String name) — возвращает константу enum с указанным именем, или выбрасывает IllegalArgumentException, если такой константы нет.
  • name() — возвращает имя константы enum как строку.
  • ordinal() — возвращает порядковый номер константы (начинается с 0).
  • compareTo(E o) — сравнивает две константы по их порядковому номеру.
  • toString() — возвращает строковое представление константы (по умолчанию совпадает с name()).

Пример использования:

enum Color { RED, GREEN, BLUE }

public class TestEnum {
    public static void main(String[] args) {
        for (Color c : Color.values()) {
            System.out.println(c.name() + " ordinal: " + c.ordinal());
        }

        Color green = Color.valueOf("GREEN");
        System.out.println("ValueOf GREEN: " + green);
    }
}