函数参数的默认值
object Sc36 {
def hello(name:String="小明",age:Int=17, gender:String="女"):Unit = {
println(s"hello, 我是${name}, ${age}岁,性别:${gender}")
}
def main(args: Array[String]): Unit = {
hello("小花",18,"女")
hello("小明",19,"男")
hello("小花",18)
hello()
hello(age = 18)
hello(gender = "男",name = "小李")
}
}
函数变参的方法
object Sc37 {
def getSum(args:Int*):Int = {
var sum = 0
for(i <- args){
sum += i
}
sum
}
def main(args: Array[String]): Unit = {
val result1 = getSum(1)
val result2 = getSum(4,1,2,3,5)
println(result1, result2)
}
}
提取函数返回值
案例: 1.定义一个函数,判断给定的三个数字是否能构成一个三角形,返回值为bool类型。 2.参数有三个,表示三条边,可以使用double类型; 任意两边之和大于第三边即可。
object Sc38 {
def testTriangle (a:Double, b:Double, c:Double):Boolean = {
a + b > c && a + c > b && b + c > a
}
def isPrime (num:Int):Boolean = {
var isPrimeNum = true
for (i <- 2 to num-1){
if (num % i == 0){
isPrimeNum = false
}
}
isPrimeNum
}
def main(args: Array[String]): Unit = {
val r = testTriangle(1.0, 2.0, 2.0)
println(r) // false
val r1 = isPrime(9)
println(r1)
}
}