参数默认值
def greet(name: String = "哈哈", age: Int = 18, gender: String = "女"): Unit = {
println(s"我是${name},我今年${age},${gender}")
}
def main(args: Array[String]): Unit = {
greet("小花", 18)
greet("小明", 20, "男")
greet()
}
greet(age = 20)
greet(gender = "男", age = 20)
案例1:传入不同的参数
def greet(name: String, score: Int*): Unit = {
var total: Double = 0
for (i <- score) {
total += i
}
val avg = total / score.length
println(s"${name}, 平均分是:${avg}")
}
def main(args: Array[String]): Unit = {
greet("小花", 90, 100, 98, 100, 60)
greet("小明", 80, 88)
greet("小绿", 90)
}
案例2:累加
def sum(n: Int): Int = {
if (n == 1) {
1
} else {
sum(n - 1) + n
}
}
def main(args: Array[String]): Unit = {
val s = sum(100)
println(s)
}
案例3:阶乘
def f(n: Int): Int = {
if (n == 0 || n == 1) {
1
} else {
n * f(n - 1)
}
}
def main(args: Array[String]): Unit = {
val s = f(4)
println(s)
}