📜  斯卡拉 |函数 - 基础

📅  最后修改于: 2022-05-13 01:55:32.275000             🧑  作者: Mango

斯卡拉 |函数 - 基础

函数是执行特定任务的语句的集合。可以将代码分成单独的函数,记住每个函数必须执行特定的任务。函数用于将一些常见且重复的任务放入单个函数中,因此我们无需为不同的输入一次又一次地编写相同的代码,只需调用该函数即可。 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