Scala方法与函数

Scala方法与函数教程

为了完成某一功能的程序指令(语句)的集合,称为函数。Scala 的函数可以分为:自定义函数和系统函数。

Scala 有方法与函数,二者在语义上的区别很小。Scala 方法是类的一部分,而函数是一个对象可以赋值给一个变量。换句话来说在类中定义的函数即是方法。

Scala 中的方法跟 Java 的类似,方法是组成类的一部分。Scala 中的函数则是一个完整的对象,Scala 中的函数其实就是继承了 Trait 的类的对象。

Scala 中使用 val 语句可以定义函数,def 语句定义方法。

Scala方法声明

语法

def functionName ([paramlist]) : [return type]

参数

参数 描述
funcName 函数名。
paramlist 可选,函数参数列表。
return type 函数返回值类型。

说明

Scala 中,使用 def 声明方法。如果方法没有返回值,可以返回为 Unit,这个类似于 Java 的 void。

Scala方法定义

语法

def functionName ([paramlist]) : [return type] = { function body return [expr] }

参数

参数 描述
funcName 函数名。
paramlist 可选,函数参数列表。
return type 函数返回值类型。

说明

方法定义由一个 def 关键字开始,紧接着是可选的参数列表,一个冒号 : 和方法的返回类型,一个等于号 = ,最后是方法的主体。

以上代码中 return type 可以是任意合法的 Scala 数据类型。参数列表中的参数可以使用逗号分隔。

案例

Scala函数定义

用方法,实现计算任意两个数的和

object HaiCoder { def main(args: Array[String]) : Unit = { println("嗨客网(www.haicoder.net)!\n") printf("Sum = %d", addInt(10, 22)) } def addInt( a:Int, b:Int ) : Int = { var sum:Int = 0 sum = a + b return sum } }

程序运行后,控制台输出如下:

01_Scala方法与函数.png

我们定义了一个方法 addInt,传入两个 int 类型的参数,函数返回两个参数的和。

Scala函数总结

Scala 中的方法跟 Java 的类似,方法是组成类的一部分。Scala 中的函数则是一个完整的对象,Scala 中的函数其实就是继承了 Trait 的类的对象。

Scala 中使用 val 语句可以定义函数,def 语句定义方法。