Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
假设我有一个带有一些函数的列表和一个带有布尔值的列表,它就像一个配置列表,并且大小是相等的。
val conf = List(true, false, true) val funcs = List(f1, f2, f3)
通过合并它们,结果应如下所示:
val res = List(f1, f3)
我很确定这可以使用 Scalaz 中的 Applicative 构建器来完成。
我必须指出,在没有 Scalaz 的情况下解决它非常简单:
scala> val a = List(true, false, true) a: List[Boolean] = List(true, false, true) scala> val b = List(1,2,3) b: List[Int] = List(1, 2, 3) scala> a.view.zip(b).filter(_._1).map(_._2).force res3: Seq[Int] = List(1, 3)