计算集合中每个元素的函数的最佳方法是什么,每个元素都有增量阴影,就像这个简单的例子:
val v = IndexedSeq(1,2,3,4)
v.shadowMap{ e => e + 1}
shadow 1: (3,4,5)
shadow 2: (2,4,5)
shadow 3: (2,3,5)
shadow 4: (2,3,4)
我认为首先要patch
或slice
来做这个,但也许有更好的方法以纯函数式的方式做到这一点?
谢谢 高级
最佳答案
def shadowMap[A,B](xs: Seq[A])(f: A => B) = {
val ys = xs map f
for (i <- ys.indices; (as, bs) = ys splitAt i) yield as ++ bs.tail
}
关于scala - 使用这些集合中元素的增量阴影计算每个元素上的函数的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11636124/