函数是执行特定任务的语句的集合。可以记住, 每个功能必须执行特定的任务, 因此可以将代码分成单独的功能。函数用于将一些常见且重复的任务放到一个函数中, 因此我们可以简单地调用该函数, 而不必为不同的输入一次又一次地编写相同的代码。 Scala被假定为函数式编程语言, 因此它们起着重要的作用。它使调试和修改代码变得更加容易。 Scala函数是头等舱值.
Scala函数和方法之间的区别:函数是可以存储在变量中的对象。但是方法总是属于具有名称, 签名字节码等的类。基本上, 可以说方法是作为某个对象的成员的函数。
功能声明与定义
通常, 函数声明和定义包含6个组件:
- def关键字:" def"关键字用于在斯卡拉.
- function_name:小写的驼峰名称应为有效名称。 Scala中的函数名称可以包含+, 〜, &, –, ++, \, /等字符。
- 参数列表:在Scala中, 在括号内定义了输入参数的逗号分隔列表, 并以其数据类型开头。
- return_type:用户在定义函数时必须提及参数的返回类型, 而函数的返回类型是可选的。如果你未指定函数的任何返回类型, 则默认返回类型为单元这等效于Java中的void。
- =:在Scala中, 用户可以使用或不使用=(等于)运算符来创建函数。如果用户使用它, 该函数将返回所需的值。如果他不使用它, 该函数将不返回任何值, 并且将像子例程一样工作。
- 方法主体:方法主体包含在括号{}之间。你需要执行代码才能执行预期的操作。
语法如下:
def function_name ([parameter_list]) : [return_type] = {
// function body
}
注意:如果用户不使用等号和正文, 则将隐式声明方法抽象.
函数调用
在Scala中, 主要有两种方法来调用该函数。第一种方法是标准方法, 如下所示:
function_name(paramter_list)
在第二种方式中, 用户还可以借助实例和点表示法来调用函数, 如下所示:
[instance].function_name(paramter_list)
例子:
object lsbin {
def main(args : Array[String]) {
// Calling the function
println( "Sum is: " + functionToAdd( 5 , 3 ));
}
// declaration and definition of function
def functionToAdd(a : Int, b : Int) : Int =
{
var sum : Int = 0
sum = a + b
// returning the value of sum
return sum
}
}
输出如下:
Sum is: 8