使用Arrays.asList方法使用Stream打印int数组[复制]
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用Arrays.asList方法使用Stream打印int数组[复制]相关的知识,希望对你有一定的参考价值。
这个问题在这里已有答案:
我正在学习Stream,我尝试使用类Arrays中的asList方法打印一个int数组,不幸的是我得到了错误的结果。
有人可以向我解释为什么我得到这个错误的结果。
public class array {
public static void main(String[] args) {
/*my way*/
int [] array = new int[]{1,2,3,7,1};
Arrays.asList(array).stream().forEach(System.out::println);
System.out.println();
/*the good way*/
Arrays.stream(array).forEach(System.out::print);
}
}
结果:
[E @慢跑
12371
答案
Arrays.asList(array) -> a List<int[]>
Arrays.asList(array).stream() -> Stream<int[]>
因此,int[]
中的流中的每个元素,而不是int
;所以你试图打印一个数组(Object
);这不会像你期望的那样工作。
在第二个例子中:
Arrays.stream(array -> IntStream
因此这是有效的
以上是关于使用Arrays.asList方法使用Stream打印int数组[复制]的主要内容,如果未能解决你的问题,请参考以下文章