Вы можете использовать EnumSet<MyEnumClass>
, например, так:
Set<MyEnumClass> all = EnumSet.allOf(MyEnumClass.class);
И затем создать еще один EnumSet<MyEnumClass>
из ваших свойств:
Set<MyEnumClass> loaded = EnumSet.noneOf(MyEnumClass.class);
for(String property : properties) {
loaded.add(MyEnumClass.valueOf(property));
}
Затем вы можете проверять разные вещи, используя Collection.removeAll
, Collection.addAll
, Collection.retainAll
:
// all will now contain every element from loaded
all.addAll(loaded);
// all will now contain every element which was not contained in loaded
all.removeAll(loaded);
// all will now contain every element which was contained in loaded
all.retainAll(loaded);