介绍
在 Scala 中,函数是一等公民,不仅可以 定义函数、调用函数,还可以将函数 赋给一个变量 或 常量
将函数赋给 常量/变量
一般应用场景不多
语法1(重要)
常量名的 类型,是 函数的 (形参列表) => 返回值,注意:中间是 =>
val 常量名:(形参列表) => 返回值 = 函数名
语法2
val 常量名 = 函数名 _
例子
def main(args: Array[String]): Unit = {
//定义函数
def add(a:Int,b:Int) : Int = {
return a+b
}
//调用函数
println(add(1,2))
//将函数赋给常量
// val fun = add(1,3) //不能写成这种,这种表示调用 add() 函数
val fun = add _
val fun2:(Int,Int) => Int = add //(参数类型) => 返回类型
println(fun) //打印常量
println(fun2)
}
执行结果:
test.StdFun7$$$Lambda$5/1914572623@6ea6d14e
test.StdFun7$$$Lambda$6/679890578@6ad5c04e
是函数的地址,这里可以看出是 Lambda表达式,关于 Lambda表达式后面会详细介绍
通过 常量/变量 调用函数
println(fun(1,2))
println(fun2(3,4))