函数参数的默认值
定义有默认值的函数
基本例子
//参数默认值:如果在调用的时候,没有传入,就使用这个默认值
//格式:参数名:类型=默认值
def greet(name:String="小张",age:Int=17,gender:String="女"):Unit={
println(s"你好,我是${name},今年${age}岁,我的性别是:${gender}")
}
def main(args: Array[String]): Unit = {
greet("小花",18,"女")
greet("小花",18)
greet("小花")
greet()
这个例子导出的结果是
你好,我是小花,今年18岁,我的性别是:女
你好,我是小花,今年18岁,我的性别是:女
你好,我是小花,今年17岁,我的性别是:女
你好,我是小张,今年17岁,我的性别是:女
可变参数
- 可变参数:用来接收同一类型的多个参数
- 格式:参数类型*
例题一
如何定义一个函数,它能接收数量不定的参数,并计算它们的累加?例如:getSum(1,2,3)得到6,getSum(1,2,3,4)得到10
/**可变参数:用来接收同一类型的多个参数
* 格式:参数类型*
* 要点:
* 1. 类型要一致
* 2. 可变参数必须在列表的最后
*/
def getSum(args:Int*):Int={
var sum=0
for(i <- args){
sum +=i
}
sum
}
def main(args: Array[String]): Unit = {
val rst1=getSum(1,2,3)
val rst2=getSum(1,2,3,4)
val rst3=getSum(1,2)
println(rst1,rst2,rst3)
}
上述代码输出的结果为(6,10,3)