Set<Badge> availableBadges = myService.getAvailableBadges();
List<Badge> allBadges = Arrays.asList(Badge.values());
allBadges.removeAll(availableBadges);
/* Badge is an enumn */
哪些收藏品支持删除全部?
答案 0 :(得分:21)
Arrays.asList
返回remove*
接口的部分无法修改的实现(部分List
方法 - 感谢@LouisWasserman的注释)。
编辑1:使用ArrayList
包装:new ArrayList<Badge>(allBadges);
答案 1 :(得分:0)
您的收藏集可能无法修改。
您需要创建新的列表
List<T> list = new ArrayList<>(unmodifiableList);
现在您的列表是可修改的,您可以执行删除和removeAll
操作。