gpt4 book ai didi

斯卡拉/猫 : How to unzip an NonEmptyList

转载 作者:行者123 更新时间:2023-12-03 04:24:41 25 4
gpt4 key购买 nike

标准库在List上提供了unzip方法:


scala>val l = List((1, "one"), (2, "two"), (3, "three"), (4, "four"), (5, "five"))

scala> l.unzip
// res13: (List[Int], List[String]) = (
// List(1, 2, 3, 4, 5),
// List("one", "two", "three", "four", "five")
//)

有没有办法在 cats 库的 NonEmptyList 上实现相同的效果:

scala> import cats.data.NonEmptyList

scala> val nel = NonEmptyList.of((1, "one"), (2, "two"), (3, "three"), (4, "four"), (5, "five"))
//res15: NonEmptyList[(Int, String)] = NonEmptyList(
// (1, "one"),
// List((2, "two"), (3, "three"), (4, "four"), (5, "five"))
//)

最佳答案

您可以简单地调用nel.toList并使用标准l.unzip,然后对结果使用NonEmptyList.fromList(unziped_list)

编辑:正如@Dylan所说,您还可以使用.fromListUnsafe来删除该选项。

关于斯卡拉/猫 : How to unzip an NonEmptyList,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57099165/

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