Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗jvOpEsEF 92 of 147 menu
◀ ▶

Поля enum в Java

В теле enum можно объявлять поля - обычно private final, чтобы у каждой константы хранились свои неизменяемые данные. Значения полям задают при объявлении констант в круглых скобках:

enum PostStatus { DRAFT(0), PUBLISHED(1), ARCHIVED(2); private final int code; PostStatus(int code) { this.code = code; } public int getCode() { return code; } }

Возьмем константу PUBLISHED и выведем ее числовой код:

System.out.println(PostStatus.PUBLISHED.getCode());

Поля перечисления доступны через методы, как у обычного класса. У разных констант одно и то же поле может хранить разные значения:

System.out.println(PostStatus.ARCHIVED.getTag());

Порядок объявления констант совпадает с порядком в values() и с полем ordinal():

System.out.println(PostStatus.PUBLISHED.getSortOrder()); System.out.println(PostStatus.PUBLISHED.ordinal());

Объявите enum Role с полем level: GUEST - 0, USER - 1, ADMIN - 2. Выведите уровень для Role.ADMIN.

Объявите enum Role с полем label: GUEST - "guest", USER - "user", ADMIN - "admin". Дана переменная:

Role role = Role.USER;

Выведите значение label для этой константы.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить