sulox32:
Eu tenho uma classe Enum com direitos.
public enum UserRight {
SYSTEMMANAGEMENT, USERADMINISTRATION, ROLEADMINISTRATION,
STRUCTUREADMINISTRATION, DOCUMENTADMINISTRATION;
}
Agora eu quero carregar todos os meus direitos em uma lista, exceto SYSTEMMANAGEMENT. Eu fazê-lo agora como esta:
availrightslist.addAll(Arrays.asList(UserRight.values()));
Como posso carregar todos os direitos sem direito SYSTEMMANAGEMENT?
Lino:
Você pode simplesmente removê-lo depois de você ter adicionado todos:
availrightslist.remove(UserRight.SYSTEMMANAGEMENT);
Ou usar alguma EnumSet
magia :
Set<UserRight> rights = EnumSet.complementOf(EnumSet.of(UserRight.SYSTEMMANAGEMENT));
Geralmente, se você tem um Collection
de enum
s é recomendável usar um EnumSet
. Porque ter uma UserRight
duas vezes realmente não faz sentido.