gpt4 book ai didi

Scala:如何通过对列表的相邻元素进行操作来创建新列表

转载 作者:行者123 更新时间:2023-12-01 10:45:35 25 4
gpt4 key购买 nike

如果我有一个像 List(1,2,3,4) 这样的列表,我想创建一个新的列表,它等同于,

列表(1+2, 3+4) = 列表(3,7)

我需要一些操作来在列表中添加相邻数字并从中创建新列表。我查看了 map、reduceLeft、foldLeft 操作,但找不到可以完成此操作的东西。

最佳答案

您正在寻找的方法是grouped,它将列表划分为给定大小的子列表。例如:

scala> List(1, 2, 3, 4).grouped(2).map(_.sum).toList
res0: List[Int] = List(3, 7)

注意 grouped 返回一个迭代器,所以如果你想要一个集合,你需要调用类似 toList 的东西。另请注意,如果您的列表没有偶数个元素(或者更一般地说不能被 grouped 的参数整除),迭代器返回的最终列表可能包含的元素少于剩下的。

关于Scala:如何通过对列表的相邻元素进行操作来创建新列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26701407/

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