Man*_*Joy 7 java arraylist java-8 java-stream
假设我有两个列表:
List<Integer> list1 = Arrays.asList(1, 2, 3);
List<Integer> list2 = Arrays.asList(1, 2, 4, 5);
Run Code Online (Sandbox Code Playgroud)
现在我想表演(list1 - list2).预期的ouptut是{3}.如何使用java 8流做到这一点?
Era*_*ran 15
如果必须使用Streams:
List<Integer> diff = list1.stream()
.filter(i -> !list2.contains(i))
.collect (Collectors.toList());
Run Code Online (Sandbox Code Playgroud)
试试这个
List<Integer> difference = new ArrayList<>(list1);
difference.removeAll(list2);
System.out.println("Remove: " + difference); //3
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9567 次 |
| 最近记录: |