gpt4 book ai didi

Scala 猫,遍历 Seq

转载 作者:行者123 更新时间:2023-12-04 12:27:47 27 4
gpt4 key购买 nike

我知道我可以穿越 List

import cats.instances.list._
import cats.syntax.traverse._

def doMagic(item: A): M[B] = ???
val list: List[A] = ???
val result: M[List[B]] = list.traverse(doMagic)

我可以转换 Seq来回 List
val seq: Seq[A] = ???
val result: M[Seq[B]] = seq.toList.traverse(doMagic).map(_.toSeq)

但是我也可以遍历 Seq没有样板?
val seq: Seq[A] = ???
val result: M[Seq[B]] = seq.traverse(doMagic)

或者获取 Traverse[Seq] 实例的简单方法是什么?

最佳答案

Cats 不为 Seq 提供类型类实例,因此除了自己实现之外,您还需要进行转换。
至于为什么,在(有点旧的)猫 issue 中有一个持续的讨论。 .综上所述,你对Seq知之甚少。确保某些类型类实例法律成立的潜在特征。
编辑:没关系,它现在存在,请参阅链接线程

关于Scala 猫,遍历 Seq,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48828399/

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