Lui*_*hys 7 functional-programming scala
假设我们有两个序列,我们想要使用某种方法将它们组合起来
val a = Vector(1,2,3)
val b = Vector(4,5,6)
Run Code Online (Sandbox Code Playgroud)
例如,添加可能是
val c = a zip b map { i => i._1 + i._2 }
Run Code Online (Sandbox Code Playgroud)
要么
val c = a zip b map { case (i, j) => i + j }
Run Code Online (Sandbox Code Playgroud)
第二部分的重复让我觉得这应该可以在一次操作中完成.我看不到任何内置的方法.我想我真正想要的是一种zip方法,它可以跳过元组的创建和提取.
在Scala中是否有更漂亮/更简洁的方式,或者Scalaz?如果没有,你会如何编写这样的方法并将其pimp到序列上,这样我就可以编写类似的东西
val c = a zipmap b (_+_)
Run Code Online (Sandbox Code Playgroud)
Rex*_*err 12
有
(a,b).zipped.map(_ + _)
Run Code Online (Sandbox Code Playgroud)
这可能足够接近您想要不打扰扩展的内容.(不幸的是,你不能无点使用它,因为暗示zipped不喜欢它.)
| 归档时间: |
|
| 查看次数: |
1442 次 |
| 最近记录: |