假设我有两个列表:

List<Integer> list1 =  Arrays.asList(1, 2, 3);
List<Integer> list2 =  Arrays.asList(1, 2, 4, 5);
现在我要执行(list1 - list2)。预期的输出是{3}。如何使用Java 8流执行此操作?

最佳答案

如果必须使用Streams:

List<Integer> diff = list1.stream()
                          .filter(i -> !list2.contains(i))
                          .collect (Collectors.toList());

关于java - Java 8中的减号操作用于减去列表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30977759/

10-12 00:38
查看更多