您的位置:首页 > 其它

2016/01/29 Scala学习4

2016-01-29 00:00 253 查看
摘要: scala函数的使用2

可变参数
Scala 允许你指明函数的最后一个参数可以是重复的,即我们不需要指定函数参数的个数,可以向函数传入可变长度参数列表。Scala 通过在参数的类型之后放一个星号来设置可变参数(可重复的参数)。例如:
object MyScalaClass3{
def main(args:Array[String]) {
printStrings("A", "BB", "CCC")
}
def printStrings(args:String*) : Unit = {
for (arg <-args){
println(arg)
}
}
}

函数的柯里化
柯里化(Currying)指的是将原来接受两个参数的函数变成新的接受一个参数的函数的过程。新的函数返回一个以原有第二个参数为参数的函数。
def add(x:Int)=(y:Int)=>x+y
那么这个函数是什么意思呢? 接收一个x为参数,返回一个匿名函数,该匿名函数的定义是:接收一个Int型参数y,函数体为x+y。对add的调用代码如下:
val result = add(1)
val sum = result(2)
第一行返回一个result函数,那result的值应该是一个匿名函数:(y:Int)=>1+y
所以为了得到结果,我们继续调用result。第二行代码,求出了1+2的值,所以结果是3,而这两行代码可以合成一行:
val x = add(1)(2), 得到结果也是3,存在变量x中。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  scala