【发布时间】:2016-09-22 13:33:45
【问题描述】:
是否可以在没有外部 foreach 的情况下进行迭代 b.需要使用 Java 8 识别 2 个数组中的公共值
Integer a[]={1,2,3,4};
Integer b[]={9,8,2,3};
for(Integer b1:b) {
Stream.of(a).filter(a1 -> (a1.compareTo(b1) ==0)).forEach(System.out::println);
}
Output: 2 3
【问题讨论】:
-
a1 -> (a1.compareTo(b1) ==0)表示a1 -> a1.equals(b1)是一种相当模糊的方式。顺便说一句,您也可以使用Predicate.isEqual(b1),或者,如果您可以确定您的数组中不会有null,则使用b1::equals。 -
@Tunaki:这些都是非常糟糕的参考。在这两种情况下,接受的答案实际上都与问题不匹配。
标签: java-8