gpt4 book ai didi

java - 如何使用 lambda 表达式计算整数列表中的差异

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:16:06 25 4
gpt4 key购买 nike

假设我有以下数组:{1,2,3,4,6,7,8}放在 Stream<Integer> s = Stream.of(1,2,3,4,6,7,8);

如何在 Java 中使用 lambda 表达式和 Stream 函数来计算每个元素与下一个元素之间的差异(在本例中为 {1,1,1,2,1,1})?这并不是真正的 reduce 操作,因为 reduce 将整个列表转换为 1 个元素;它也不是映射操作,因为它需要两个元素来计算差异,而不仅仅是一个。

最佳答案

您可以遍历索引而不是元素,例如

int s[] = {1, 2, 3, 4, 6, 7, 8};
IntStream differences =
IntStream.range(0, s.length - 1)
.map(i -> s[i + 1] - s[i]);

关于java - 如何使用 lambda 表达式计算整数列表中的差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30697532/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com