3 回答
TA贡献1824条经验 获得超6个赞
在java-8中,您可以使用流:
int[] a = {10,20,30,40,50};
int sum = IntStream.of(a).sum();
System.out.println("The sum is " + sum);
输出:
总和是150。
在包装里 java.util.stream
import java.util.stream.*;
TA贡献1824条经验 获得超8个赞
如果您使用的是Java 8,则Arrays该类提供了一种stream(int[] array)方法,该方法返回IntStream具有指定int数组的序列。它还已为double和long数组重载。
int [] arr = {1,2,3,4};
int sum = Arrays.stream(arr).sum(); //prints 10
它还提供了一种方法 stream(int[] array, int startInclusive, int endExclusive),允许您采用指定范围的数组(可能有用):
int sum = Arrays.stream(new int []{1,2,3,4}, 0, 2).sum(); //prints 3
最后,它可以采用type数组T。因此,根据示例,您可以有一个String包含数字作为输入的数字,如果要对它们求和,只需执行以下操作:
int sum = Arrays.stream("1 2 3 4".split("\\s+")).mapToInt(Integer::parseInt).sum();
添加回答
举报