我试图写我自己的通用map
功能,以下是我想出了:写我自己的通用映射functioni
def map[A, B, CC[X] <: Traversable[X], That]
(xs: CC[A])(f: A => B)
(implicit cbf: CanBuildFrom[CC[_], B, That]): That = {
val b = cbf(xs)
for (a <- xs)
b += f(a)
b.result
}
这似乎与List
,Vector
,但与Map
工作秒。我应该做些什么改变才能和Map
一起工作呢?