小编Art*_*oom的帖子

Java流:计算基元数组中的不同值

为什么int数组的非重复计数返回的结果与Integer数组的计数不同?在这两种情况下,我都希望得到3的结果。

int[] numbers1 = { 1, 2, 3 };
System.out.println("numbers1: " + Arrays.toString(numbers1));
System.out.println("distinct numbers1 count: " + Stream.of(numbers1).distinct().count());

Integer[] numbers2 = { 1, 2, 3 };
System.out.println("numbers2: " + Arrays.toString(numbers2));
System.out.println("distinct numbers2 count: " + Stream.of(numbers2).distinct().count());
Run Code Online (Sandbox Code Playgroud)

结果

numbers1: [1, 2, 3]
distinct numbers1 count: 1

numbers2: [1, 2, 3]
distinct numbers2 count: 3
Run Code Online (Sandbox Code Playgroud)

java arrays primitive java-8 java-stream

4
推荐指数
2
解决办法
129
查看次数

标签 统计

arrays ×1

java ×1

java-8 ×1

java-stream ×1

primitive ×1