Set<Badge> availableBadges = myService.getAvailableBadges();
List<Badge> allBadges = Arrays.asList(Badge.values());
allBadges.removeAll(availableBadges);
/* Badge is an enumn */
remove all をサポートするコレクションは何ですか?
Set<Badge> availableBadges = myService.getAvailableBadges();
List<Badge> allBadges = Arrays.asList(Badge.values());
allBadges.removeAll(availableBadges);
/* Badge is an enumn */
remove all をサポートするコレクションは何ですか?
Arrays.asListインターフェースの部分的に変更不可能な実装を返します(メソッドの一部remove*-@LouisWassermanのコメントに感謝しListます)。
編集1:ArrayListラッパーを使用します:new ArrayList<Badge>(allBadges);
コレクションは変更できない場合があります。
新しいリストを作成する必要があります
List<T> list = new ArrayList<>(unmodifiableList);
リストが変更可能になり、削除や操作を実行できるようになりremoveAllました。