在Scala中,函数可以使用def关键字来定义,语法如下:
def functionName(parameter1: Type, parameter2: Type, ...): ReturnType = {
// 函数体
// 可以包含多行代码
// 返回值为最后一行代码的结果
}
例如,定义一个简单的加法函数:
def add(x: Int, y: Int): Int = {
x + y
}
函数的使用则使用函数名加上参数列表的方式调用,例如:
val result = add(2, 3)
println(result) // 输出 5
除了def关键字外,Scala还提供了匿名函数的方式来定义函数,例如:
val add = (x: Int, y: Int) => x + y
使用匿名函数的方式调用:
val result = add(2, 3)
println(result) // 输出 5
另外,Scala还支持高阶函数,即函数可以作为参数传递给其他函数或者作为返回值返回,例如:
def operate(func: (Int, Int) => Int, x: Int, y: Int): Int = {
func(x, y)
}
val result = operate((x, y) => x + y, 2, 3)
println(result) // 输出 5