Подтвердить что ты не робот

Как получить номер возможного элемента Enum?

Есть ли встроенный способ получить количество элементов Enum с чем-то вроде Myenum.length,

Или мне нужно реализовать себе функцию int size() hardcording число элементов?

4b9b3361

Ответ 1

Да, вы можете использовать метод Enum.values() для получения массива значений Enum, а затем использовать свойство length.

public class Main {
    enum WORKDAYS { Monday, Tuesday, Wednesday, Thursday, Friday; }

    public static void main(String[] args) {
        System.out.println(WORKDAYS.values().length);
        // prints 5
    }
}

http://ideone.com/zMB6pG

Ответ 2

Вы можете получить длину, используя Myenum.values().length

Enum.values() возвращает массив из всех констант enum. Вы можете использовать переменную length этого массива, чтобы получить число констант enum.

Предполагая, что у вас есть следующее перечисление:

public enum Color
{
    BLACK,WHITE,BLUE,GREEN,RED
}

Следующий оператор присваивает 5 значению size:

int size = Color.values().length;

Ответ 3

MyEnum.values() возвращает константы перечисления в виде массива.

Итак, вы можете использовать:

int size = MyEnum.values().length