Метод of класса EnumSet
Метод of класса EnumSet создает и возвращает
новое множество EnumSet, содержащее все указанные
элементы перечисления. В первый параметр мы передаем
обязательный элемент перечисления, а во все последующие -
остальные элементы, которые должны попасть в множество.
Количество передаваемых элементов не ограничено, но все они
должны принадлежать одному и тому же перечислению.
Метод является статическим, поэтому вызывается через имя
класса EnumSet. Если не передать ни одного элемента
перечисления, возникнет ошибка компиляции, так как первый
параметр является обязательным.
Синтаксис
EnumSet.of(E first, E... rest)
Пример
Давайте создадим перечисление и множество из двух его элементов:
import java.util.EnumSet;
public class Main
{
enum Day
{
MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY
}
public static void main(String[] args)
{
EnumSet<Day> res = EnumSet.of(Day.MONDAY, Day.WEDNESDAY);
System.out.println(res);
}
}
Результат выполнения кода:
[MONDAY, WEDNESDAY]
Пример
Давайте создадим множество только с одним элементом перечисления:
import java.util.EnumSet;
public class Main
{
enum Day
{
MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY
}
public static void main(String[] args)
{
EnumSet<Day> res = EnumSet.of(Day.FRIDAY);
System.out.println(res);
}
}
Результат выполнения кода:
[FRIDAY]
Пример
Давайте проверим, что созданное множество содержит указанный элемент:
import java.util.EnumSet;
public class Main
{
enum Day
{
MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY
}
public static void main(String[] args)
{
EnumSet<Day> res = EnumSet.of(Day.MONDAY, Day.TUESDAY, Day.WEDNESDAY);
System.out.println(res.contains(Day.TUESDAY));
System.out.println(res.contains(Day.FRIDAY));
}
}
Результат выполнения кода:
true
false