stream().mapToDouble
时间: 2023-09-06 12:12:48 浏览: 90
stream().mapToDouble() 是 Java 8 中的一个方法,它可以将一个 Stream 对象中的元素映射为 double 类型,并返回一个 DoubleStream 对象。这个方法通常用于对数字类型的元素进行一些计算操作,例如求和、求平均值等。
具体来讲,mapToDouble() 方法接收一个 Function 接口作为参数,这个函数接收一个元素作为输入,并返回一个 double 类型的值。mapToDouble() 方法会遍历 Stream 中的所有元素,将每个元素传递给这个函数,并将函数的返回值组成一个新的 DoubleStream 对象返回。
举个例子,假设我们有一个包含整数的 Stream 对象,我们可以使用 mapToDouble() 方法将这些整数转换为 double 类型,并计算它们的平均值,代码如下:
```
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);
double average = numbers.stream()
.mapToDouble(num -> num)
.average()
.orElse(0.0);
System.out.println(average); // 输出 3.0
```
在这个例子中,我们首先将整数列表转换为 Stream 对象,然后使用 mapToDouble() 方法将整数映射为 double 类型,接着使用 average() 方法计算这些 double 值的平均值。如果这个 Stream 对象为空,则使用 orElse() 方法返回默认值 0.0。最后,我们将计算得到的平均值输出到控制台上。
相关推荐
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)