字面量语法,看起来就像给变量赋值
object Base42{
def sum(x:Int, y:Int):Int = {
x + y
}
val sum1 = (x:Int, y:Int) => {x + y}
def main(args:Array[String]):Unit = {
val a = 2
val n = 5
println(s"$a + $n = ${sum1(a, n)}")
}
}
要点
- 有一个箭头符号 =>
- 省略def,省略了返回值类型
特殊的写法-简写
- 函数只有一句代码,可以省略{}
- 如果参数只使用了一次,那么可以用——来代替
object Base42{
def sum(x:Int, y:Int):Int = {
x + y
}
val sum1 = (x:Int, y:Int) => {x + y}
val sum2 = (x:Int, y:Int) => x + y
val sum3:(Int,Int) => Int = {_ + _}
val sum4 = (_:Int) + (_:Int)
def main(args:Array[String]):Unit = {
val a = 2
val n = 5
println(s"$a + $n = ${sum1(a, n)}")
println(s"$a + $n = ${sum2(a, n)}")
println(s"$a + $n = ${sum3(a, n)}")
println(s"$a + $n = ${sum4(a, n)}")
}
}