sulox32 :
I have a Enum class with rights.
public enum UserRight {
SYSTEMMANAGEMENT, USERADMINISTRATION, ROLEADMINISTRATION,
STRUCTUREADMINISTRATION, DOCUMENTADMINISTRATION;
}
Now i want to load all my rights into a list except SYSTEMMANAGEMENT. I do it now like this:
availrightslist.addAll(Arrays.asList(UserRight.values()));
How can I load all rights without the SYSTEMMANAGEMENT right?
Lino :
You can just remove it after you've added all:
availrightslist.remove(UserRight.SYSTEMMANAGEMENT);
Or use some EnumSet
magic:
Set<UserRight> rights = EnumSet.complementOf(EnumSet.of(UserRight.SYSTEMMANAGEMENT));
Generally if you have a Collection
of enum
s it is recommended to use an EnumSet
. Because having a UserRight
two times doesn't really make sense.