Java的Arrays.sum
时间: 2023-07-24 16:41:06 浏览: 57
Java中的Arrays.sum方法用于计算一个数组中所有元素的和。该方法接受一个数组作为参数,并返回一个表示数组中所有元素之和的整数值。可以使用该方法来快速计算数组中元素的总和,而不必手动遍历数组并逐个相加。以下是一个使用Arrays.sum方法的示例代码:
```
int[] nums = {1, 2, 3, 4, 5};
int sum = Arrays.sum(nums);
System.out.println("数组中所有元素之和为:" + sum);
```
输出结果为:
```
数组中所有元素之和为:15
```
相关问题
Arrays.stream
`Arrays.stream` 是 Java 8 中的一个方法,它可以将一个数组转换成一个流(Stream)对象。这个方法可以用于处理各种类型的数组,包括基本类型数组和对象类型数组。它的语法如下:
```java
Arrays.stream(array)
```
其中,`array` 是要转换的数组。转换后得到的流对象可以进行各种操作,比如过滤、映射、排序、聚合等。例如,下面的代码将一个整型数组转换成一个流,并对其中的元素进行求和:
```java
int[] numbers = {1, 2, 3, 4, 5};
int sum = Arrays.stream(numbers).sum();
System.out.println(sum); // 输出 15
```
需要注意的是,`Arrays.stream` 方法返回的是一个顺序流(ordered stream),也就是说,流中的元素保持了原来数组中的顺序。如果需要得到一个并行流(parallel stream),可以使用 `Arrays.parallelStream` 方法。
.stream().maptoint().sum()
这段代码是Java 8中使用Stream API对整型列表进行求和的方法。具体来说,`.stream()`方法将列表转换为流,`.mapToInt(Integer::intValue)`方法将流中的元素映射为整型,`.sum()`方法对整型流进行求和操作。以下是两个例子:
1.使用reduce()方法求和:
```java
List<Integer> integerList = Arrays.asList(1, 2, 3, 4, 5);
int sum = integerList.stream().reduce(0, Integer::sum);
System.out.println("The sum is: " + sum); // 输出:The sum is: 15
```
2.使用mapToInt()和sum()方法求和:
```java
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
int sum = numbers.stream()
.filter(n -> n % 2 == 0)
.mapToInt(Integer::intValue)
.sum();
System.out.println("The sum of even numbers: " + sum); // 输出:The sum of even numbers: 30
```