理论教育 函数的简单使用方法

函数的简单使用方法

时间:2023-06-14 理论教育 版权反馈
【摘要】:在Scala 中,函数语句块的最后一个值就是这个函数的返回值,因此并不使用return。例3. 定义一个函数,完成两个整型数据的求和。例5. 指定最后一个参数为可变参数, 从而接受数目不定的同类型实参。

函数的简单使用方法

一、函数的定义

Scala 中函数相当于Java 中的静态方法,函数的声明需要使用关键字def,除了递归之外不需要声明返回类型,这是因为递归函数只有在运行的时候才能知道返回类型是什么,而Scala 只能在代码编译的时候做类型推测。在Scala 中,函数语句块的最后一个值就是这个函数的返回值,因此并不使用return。

Scala 函数定义格式如下:

当函数仅仅只有一条语句时不用加大括号,如果函数没有返回值,可以设置返回类型为Unit。

例1. 定义一个无返回值的函数。

也可以将上述函数简写为:

例2. 定义一个函数,完成奇偶判断。

例3. 定义一个函数,完成两个整型数据的求和。

例4. 带默认参数的函数。

例5. 指定最后一个参数为可变参数, 从而接受数目不定的同类型实参。

由上面的例子可以看到,当函数的返回值类型确定时,可以省略掉。

二、函数的调用

使用“函数名(参数)”即可完成函数的调用,如对say1(),judge1(4),add1(4,5),echo(“hello”, “scala”)的调用结果如下:

scala> say1()

Hello World!

scala> judge1(4)(www.daowen.com)

res2: Int = 1

scala> add1(4,5)

res4: Int = 9

scala> echo("hello", "scala")

hello

scala

一般情况下函数调用参数,就按照函数定义时的参数顺序一个个传递。但是也可以通过命名参数(指定函数参数名),不需要按照顺序向函数传递参数,例如:

def printInt( a:Int, b:Int ) = {

println("a = " + a );

println("b = " + b );

}

scala> printInt(b = 5, a = 4)

a = 4

b = 5

Scala 的参数传递采用传值的方式,参数被当做常量val 而非变量var 传入,如果修改参数的值则会报错:

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈