【发布时间】:2018-02-22 21:10:32
【问题描述】:
public static void main(String[] args) {
List<Integer> numbers1 = Arrays.asList(1,2,3);
List<Integer> numbers2 = Arrays.asList(3,4);
List<int[]> intPairs = numbers1.stream()
.flatMap(i -> numbers2.stream()
.filter(j -> (i+j)%3 == 0)
.map(j -> new int[]{i,j}))
.collect(Collectors.toList());
intPairs.stream().forEach(System.out::println);
}
对于上面的代码,我得到的输出是:
[I@214c265e
[I@448139f0
但我的期望是得到[(2, 4), (3, 3)]。
您能指导我实现这一目标吗?
【问题讨论】:
-
可以把最后一行改成:intPairs.stream().map(Arrays::toString).forEach(System.out::println);