Closed1
Javaでリストの差分を得る方法(A-B)
- ListクラスのremoveAll()メソッド
- 破壊的
List<Integer> list1 = new ArrayList<>(Arrays.asList(1, 2, 3, 4, 5));
List<Integer> list2 = new ArrayList<>(Arrays.asList(2, 4));
list1.removeAll(list2);
System.out.println(list1); // [1, 3, 5]
- CollectionUtilsクラスのsubtract()メソッド
- 非破壊的
- 外部ライブラリであるApache Commons Collectionsが必要
List<Integer> list1 = Arrays.asList(1, 2, 3, 4, 5);
List<Integer> list2 = Arrays.asList(3, 4, 5, 6, 7);
Collection<Integer> diff = CollectionUtils.subtract(list1, list2);
System.out.println(diff);
このスクラップは2023/02/26にクローズされました