斯卡拉 |函数 - 基础
函数是执行特定任务的语句的集合。可以将代码分成单独的函数,记住每个函数必须执行特定的任务。函数用于将一些常见且重复的任务放入单个函数中,因此我们无需为不同的输入一次又一次地编写相同的代码,只需调用该函数即可。 Scala 被假定为函数式编程语言,因此它们发挥着重要作用。它使调试和修改代码更容易。 Scala 函数是一流的值。
Scala函数和方法之间的区别:函数是一个可以存储在变量中的对象。但是一个方法总是属于一个具有名称、签名字节码等的类。基本上,你可以说一个方法是一个函数,它是某个对象的成员。
函数声明和定义
一般来说,函数声明和定义有 6 个组成部分:
- def 关键字: “def”关键字用于在Scala中声明一个函数。
- function_name:它应该是小写的有效名称。 Scala 中的函数名可以包含 +、~、&、–、++、\、/ 等字符。
- parameter_list:在 Scala 中,输入参数的逗号分隔列表在括号内定义,并在其数据类型之前定义。
- return_type:用户在定义函数时必须提到参数的返回类型,函数的返回类型是可选的。如果不指定函数的任何返回类型,则默认返回类型为Unit ,相当于Java中的 void。
- = :在 Scala 中,用户可以创建带有或不带有 = (equal) 运算符的函数。如果用户使用它,该函数将返回所需的值。如果他不使用它,该函数将不会返回任何值,并且会像子程序一样工作。
- 方法体:方法体用大括号 { } 括起来。执行预期操作所需执行的代码。
句法:
def function_name ([parameter_list]) : [return_type] = {
// function body
}
注意:如果用户不使用等号和正文,则隐式方法声明为abstract 。
函数调用
Scala中调用函数的方式主要有两种。第一种方式是标准方式如下:
function_name(paramter_list)
在第二种方式中,用户还可以借助实例和点符号调用函数,如下所示:
[instance].function_name(paramter_list)
例子:
object GeeksforGeeks {
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