提供模式匹配的匿名函数:
val a = List((1,2), (3,4))
val c = a.map{case (x, y) => (y, x)}
有没有办法使用类似的语法来实现与函数文字相同的东西?
val f = case (x,y) => (y,x)
val c = a.map(f)
比这更好的东西:
val f = (z: (Int, Int)) => {
z match {
case (x, y) => (y, x)
}
}
答案 0 :(得分:3)
如果您在{}:
中键入注释和环绕声,则此功能正常scala> val f: (Int,Int) => (Int,Int) = { case (x, y) => (y,x) }
f: (Int, Int) => (Int, Int) = <function2>