gpt4 book ai didi

scala - 将 Set 转换为cats.data.NonEmptySet?

转载 作者:行者123 更新时间:2023-12-04 18:19:06 26 4
gpt4 key购买 nike

在猫中是否有标准的扩展方法Set将其转换为 Option[cats.data.NonEmptySet] ?

最佳答案

不适用于 scala.collection.immutable.Set , 但对于 SortedSet :

scala> import cats.syntax.set._
import cats.syntax.set._

scala> import scala.collection.immutable.SortedSet
import scala.collection.immutable.SortedSet

scala> SortedSet(1, 2, 3).toNes
res0: Option[cats.data.NonEmptySet[Int]] = Some(TreeSet(1, 2, 3))

你当然可以转换普通的 Set :
scala> Set(1, 2, 3).to[SortedSet].toNes
res1: Option[cats.data.NonEmptySet[Int]] = Some(TreeSet(1, 2, 3))

猫的 NonEmptySet不是建立在 Set (并且 Cats 不提供 Set 的语法)因为 Set依靠普遍平等来确定其元素的唯一性。 SortedSet另一方面需要一个 scala.math.Ordering例如,这使它更符合 Cats 中遵循的设计原则(更多讨论参见 this issue)。

关于scala - 将 Set 转换为cats.data.NonEmptySet?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54481719/

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