Java ENUM с выбором логического ИЛИ - PullRequest
0 голосов
/ 22 ноября 2011

Я хотел бы реализовать метод, который возвращает одно или список разрешенных действий, определенных как enum.

Например, мой метод должен выглядеть следующим образом:

public enum getAllowedActions() {
  return // (( 'something like' Actions.ACTION1 & Actions.ACTION2 ));
}

и затем прочитатьрезультаты в другой позиции, как:

if (getAllowedActions() == Actions.ACTION1) {
  // do something...
}

с:

public class enum {
  ACTION1, ACTION2;
}

Спасибо.Стефано.

1 Ответ

7 голосов
/ 22 ноября 2011

Звучит так, будто вы просто ищете EnumSet:

public EnumSet<Action> getAllowedActions() {
    return EnumSet.of(Action.ACTION1, Action.ACTION2);
}

...
if (getAllowedAction().contains(Action.ACTION1)) {
    ...
}
...