【发布时间】:2018-04-11 10:16:45
【问题描述】:
我有一个枚举:
public enum PermissionsEnum {
ABC("Abc"),
XYZ("Xyz"),
....
}
然后我有一个枚举列表。我想检查我的列表是否至少有一个枚举。我目前通过迭代方法检查它。我也知道有一种方法可以使用|| 检查list.contains(enum.ABC..) || list.contains(enum.XYZ) || ...。
有没有更好的方法?
This question 显示如果目标列表是字符串列表,我想获得匹配状态,如果列表是另一个枚举列表。
【问题讨论】:
-
尝试
!Collections.disjoint(list1, list2);检查list2是否包含list2形式的元素 -
“我想检查我的(枚举)列表是否至少有一个枚举”是什么意思。也许我误解了,但如果你有一个
List<PermissionEnum>,那么不是所有元素都是这些枚举之一吗?除此之外,存储枚举集合的最佳方式是在EnumSet中,因为两次或多次拥有相同的权限是没有意义的。