我正在尝试编写自己的泛型map函数,以下是我的想法:
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
}
Run Code Online (Sandbox Code Playgroud)
这似乎适用于List,Vector但不适用于Maps.我应该做些什么改变,以便它也适用于Maps?