我有一个整数数组,例如:
{ 30 , 2, 3, 4, 5}
是否可以创建一个lambda表达式(使用流)来区分数组的第一个元素(在我们的例子中为30)和数组(2+3+4+5 = 13)
的其余部分之和,这样结果就是17?
答案 0 :(得分:6)
对于您的用例,您可以尝试:
IntStream.of(array).reduce( (left,right) -> left - right).getAsInt()
答案 1 :(得分:4)
您可以计算数组的最后n-1个元素的总和,并从第一个元素中减去它:
int result = inputArray[0] - IntStream.of(inputArray).skip(1).sum();