此代码将函数应用于Ints列表,并将值4中的每个值设置为选项列表:
val l = List(1,2,3,4,5) //> l : List[Int] =
val v = 4 //> v : Int = 4
def g(v:Int) = List(v-1, v, v+1) //> g: (v: Int)List[Int]
l map (x => {f(x);}) //> res0: List[Option[Int]] = List(Some(4), Some(4), Some(4), Some(4), Some(4))
Run Code Online (Sandbox Code Playgroud)
地图签名:
def map[B, That](f: A => B)(implicit bf: CanBuildFrom[Repr, B, That]): That = {
Run Code Online (Sandbox Code Playgroud)
由于B是第一个类型参数(在map [B,That]中)这是否意味着它键入前缀操作数'l'(List)?
怎么打'A'?scala编译器是否以某种方式检查List'l'中的类型并推断其类型为Int?
怎么打'那个'?