I have a Enum class with rights.
public enum UserRight {
SYSTEMMANAGEMENT, USERADMINISTRATION, ROLEADMINISTRATION,
STRUCTUREADMINISTRATION, DOCUMENTADMINISTRATION;
}
Run Code Online (Sandbox Code Playgroud)
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()));
Run Code Online (Sandbox Code Playgroud)
How can I load all rights without the SYSTEMMANAGEMENT right?
Lin*_*ica 14
您可以在添加所有内容后将其删除:
availrightslist.remove(UserRight.SYSTEMMANAGEMENT);
Run Code Online (Sandbox Code Playgroud)
或使用一些EnumSet 魔术:
Set<UserRight> rights = EnumSet.complementOf(EnumSet.of(UserRight.SYSTEMMANAGEMENT));
Run Code Online (Sandbox Code Playgroud)
通常,如果您有个Collection,enum建议您使用EnumSet。因为UserRight两次都没有意义。
| 归档时间: |
|
| 查看次数: |
189 次 |
| 最近记录: |