用stream流求和集合中元素
时间: 2023-08-18 17:13:03 浏览: 95
假设集合中元素类型为整数,可以使用 Java 8 中的 stream 流来求和集合中的元素。示例如下:
```java
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);
int sum = numbers.stream().mapToInt(Integer::intValue).sum();
System.out.println("Sum of numbers: " + sum);
```
上述代码中,首先定义了一个包含整数元素的集合 `numbers`,然后使用 `stream()` 方法将其转换为一个流对象。接着使用 `mapToInt()` 方法将流中的元素映射为整数类型,最后使用 `sum()` 方法对整数流求和。最终输出求和结果。
相关问题
stream流对list集合 求和
使用Java 8的Stream流可以对List集合进行求和操作。下面是一个示例代码:
```java
import java.util.Arrays;
import java.util.List;
public class StreamSumExample {
public static void main(String[] args) {
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);
// 使用Stream流对List集合进行求和
int sum = numbers.stream().mapToInt(Integer::intValue).sum();
System.out.println("Sum: " + sum);
}
}
```
在上述示例中,我们创建了一个整数类型的List集合`numbers`,其中包含了一些数字。通过使用Stream流的`mapToInt`方法将每个Integer类型的元素映射为int类型,然后使用`sum`方法对所有元素进行求和操作。
输出结果:
```
Sum: 15
```
这样,我们就可以使用Stream流对List集合进行求和操作了。如果有其他问题,请随时提问。
stream流对list集合 求和 BigDecimal
对于一个 List 集合中的元素求和,可以使用 Stream 流来实现。而对于 BigDecimal 类型的元素求和,可以使用 reduce 方法来实现。以下是一个示例代码:
```java
import java.math.BigDecimal;
import java.util.Arrays;
import java.util.List;
public class Main {
public static void main(String[] args) {
// 创建一个包含 BigDecimal 类型元素的 List
List<BigDecimal> numbers = Arrays.asList(
new BigDecimal("1.5"),
new BigDecimal("2.0"),
new BigDecimal("3.7")
);
// 使用 Stream 流和 reduce 方法求和
BigDecimal sum = numbers.stream()
.reduce(BigDecimal.ZERO, BigDecimal::add);
System.out.println("Sum: " + sum);
}
}
```
在上述代码中,我们首先创建了一个包含 BigDecimal 类型元素的 List。然后,使用 Stream 流的 reduce 方法来将这些元素累加起来,初始值设置为 BigDecimal.ZERO,累加操作使用 BigDecimal 的 add 方法。最后,打印出求和结果。
输出结果为:
```
Sum: 7.2
```
希望以上内容能对你有所帮助。如果你有更多问题,请继续提问。
阅读全文