stream 取绝对值
时间: 2025-01-03 14:40:32 浏览: 6
### 使用 Stream API 对元素取绝对值
为了实现对 `stream` 中的整数元素取绝对值,可以利用 Java 的 `map()` 方法来转换流中的每一个元素。下面是一个具体的例子:
```java
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
public class AbsoluteValueExample {
public static void main(String[] args) {
List<Integer> numbers = Arrays.asList(-1, 2, -3, 4, -5);
List<Integer> absoluteValues = numbers.stream()
.map(Math::abs) // 将每个元素映射为其绝对值
.collect(Collectors.toList());
System.out.println(absoluteValues); // 输出结果为 [1, 2, 3, 4, 5]
}
}
```
在这个实例里,通过调用 `Math.abs()` 函数作为参数传递给 `map()` 来计算每个数值型数据项的绝对值[^1]。
如果希望在处理过程中观察中间状态(例如查看哪些数字被改变了),则可以在链式调用中加入 `peek()` 操作来进行调试输出而不影响实际的数据流转换过程[^2]。
阅读全文