gpt4 book ai didi

scala - 使用 zipWithIndex 对列表项进行分组

转载 作者:行者123 更新时间:2023-12-02 06:27:59 28 4
gpt4 key购买 nike

我有一个需要根据索引分组的列表。分组是用第 i 个项目和第 (i+6) 个项目完成的(列表大小是 6 的倍数)。

val list = List("a" ,"b" ,"c" ,"d" ,"e" ,"f" ,"g" ,"h" ,"i" ,"j" ,"k","l")

预期结果:

    "a" , "g"
"b" , "h"
"c" , "i"
"d" , "j"
"e" , "k"
"f" , "l"

我可以使用以下方法对单个项目进行分组

list.view.zipWithIndex.filter { _._2 % 6 == 0 }.map { _._1}.force

给出结果

Seq[String] = List(a, g)

不确定如何一次获得所有项目的预期结果。

最佳答案

list.grouped(6).toList.transpose

grouped(6) 每次将列表分解为 6 ​​个元素,并转置将列表从

List[List[String]] = List(List(a, b, c, d, e, f), List(g, h, i, j, k, l))

List[List[String]] = List(List(a, g), List(b, h), List(c, i), List(d, j), List(e, k) , 列表(f, l))

关于scala - 使用 zipWithIndex 对列表项进行分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50714159/

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