【发布时间】:2020-04-23 10:29:39
【问题描述】:
我有以下数组,
int [] a = {5,3,10,8,4,2,9,6};
我正在尝试从 tha 数组中获取丢失的数字,
private static int getMissingNumber(int[] a) {
int expectedSum = IntStream.rangeClosed(1, 10)
.reduce(0, Integer::sum);
int actualSum = Arrays.stream(a).reduce(0, Integer::sum);
return expectedSum-actualSum;
}
但是得到的是 8 而不是 7。我在这里缺少什么?
【问题讨论】:
-
{5,3,10,8,4,2,9,1};的预期输出是什么? -
我正在检查单个丢失的号码。这里缺少两个数字。
-
当然,但不应该假设输入总是正确的,不是吗? (特别是当它没有排序并且没有一个基本索引开始时)
标签: java arrays java-stream