为了完成某一功能的程序指令(语句)的集合,称为函数。Scala 的函数可以分为:自定义函数和系统函数。
Scala 有方法与函数,二者在语义上的区别很小。Scala 方法是类的一部分,而函数是一个对象可以赋值给一个变量。换句话来说在类中定义的函数即是方法。
Scala 中的方法跟 Java 的类似,方法是组成类的一部分。Scala 中的函数则是一个完整的对象,Scala 中的函数其实就是继承了 Trait 的类的对象。
Scala 中使用 val 语句可以定义函数,def 语句定义方法。
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 } }
程序运行后,控制台输出如下:
我们定义了一个方法 addInt,传入两个 int 类型的参数,函数返回两个参数的和。
Scala函数总结
Scala 中的方法跟 Java 的类似,方法是组成类的一部分。Scala 中的函数则是一个完整的对象,Scala 中的函数其实就是继承了 Trait 的类的对象。
Scala 中使用 val 语句可以定义函数,def 语句定义方法。