网页学习体会

  • 首页
  • 个人博客
您的位置: 首页  >  IT文章  >  Either Sequence

Either Sequence

分类: IT文章 • 2025-02-08 08:21:37
package either

object Sequence {

  def sequence[E, A](es: List[Either[E, A]]): Either[E, List[A]] = es match {
    case Nil    => Right(Nil)
    case h :: t => h flatMap (hh => sequence(t) map (tt => hh :: tt))
  }

  def main(args: Array[String]): Unit = {
    val l1 = List(Right(1), Right(2), Right(3))
    val l2 = List(Right(1), Left("Error"), Right(3))
    println(sequence(l1))
    println(sequence(l2))
  }
}
Right(List(1, 2, 3))
Left(Error)

相关推荐

  • leetcode 60. Permutation Sequence(康托展开)
  • Either Sequence
  • Either Map2Ext
  • Either Traverse
  • Option Sequence
  • Either
  • Linux部分常用命令总结 cat(查看文件数据) cp(复制) curl cut(文本列切割) date(显示或修改时间) dd(底层复制) echo(命令回显) history(查看命令历史) ls(查看文件信息) mktemp(创建临时文件或目录) seq(sequence序列) screen(打开虚拟屏幕) sleep(阻塞指定时长) sort(排序) tee tree(查看目录层级结构) touch(时间戳管理工具) tr(字符串替换) uname(显示运行中的内核相关信息) uniq(去重) watch(定时自动刷新查看) wget(网页下载器) alias和unalias(别名)
  • USACO Sorting a Three-Valued Sequence
  • 20140710 sequence
  • BZOJ1345 [Baltic2007]序列问题Sequence
  • Either Traverse
  • 315. Count of Smaller Numbers After Self
    网站免责声明 网站地图 最新文章 用户隐私 版权申明
本站所有数据收集于网络,如果侵犯到您的权益,请联系网站进行下架处理。   

Copyright © 2018-2021   Powered By 网页学习体会    备案号:   粤ICP备20002247号