1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.
  2. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

(Решено)Проверка enum на существование

Тема в разделе "Разработка плагинов для новичков", создана пользователем reZero, 15 авг 2018.

Статус темы:
Закрыта.
  1. Автор темы
    reZero

    reZero Активный участник Пользователь

    Баллы:
    76
    Каким образом можно проверить, существует ли enum, например, из аргумента команды?
    Я такого метода не нашел.
     
  2. LuckyZeeRo

    LuckyZeeRo Активный участник Пользователь

    Баллы:
    96
    Имя в Minecraft:
    i0xHeX
    В примерах буду брать Material
    Из любого enum'а можно взять все его значения:
    Код:
    Material[] materials = Material.values();
    Проходишся по всех значениях и проверяешь имя. Вариант в одну строчку по стримами:
    Код:
    boolean hasStone = Arrays.stream(Material.values()).anyMatch(type -> type.name().equals("STONE"));
    Можно так же брать valueOf(name) и оборачивать в try catch, на тот случай, если оно не найдет нужного значения, оно выбрасывает исключение.
     
  3. Автор темы
    reZero

    reZero Активный участник Пользователь

    Баллы:
    76
    Спасибо!
     
Статус темы:
Закрыта.

Поделиться этой страницей