定义函数
函数调用
object Base39 {
def max(x:Int, y:Int):Int = {
if (x > y) {
x
} else {
y
}
}
def main(args: Array[String]): Unit = {
val s = max(10,20)
println(s)
}
}
特殊的写法
- 没有参数列表,可以省略定义函数时的(),那么调用的时候,也不需要再加上()
- 函数的最后一条语句为函数的返回值
- 如果函数只有一句代码,可以省略
object Base39 {
def getSum(x:Int,y:Int) :Int = x + y
def dosomething: Int = {
"11"
1
}
def max(x:Int, y:Int):Int = {
if(x > y) {
x
} else {
y
}
}
def main(args: Array[String]): Unit = {
dosomething
println( getSum(1,2) )
val s = max(10,20)
println(s);
}
}
函数规则
函数返回多个值
定义三个数中最大值 最小值
object Base40 {
def max(x: Int, y: Int, z: Int): Int = {
val c = if (x > y) {
x
} else {
y
}
if (c > z) c else z
}
def min(x: Int, y: Int, z: Int): Int = {
1
}
def main(args: Array[String]): Unit = {
val s = max(100, 100, 100)
println(s);
val m = min(1, 10, 100)
println(s);
}
}
object Base40 {
def max(x: Int, y: Int, z: Int): Int = {
val c = if (x > y) {
x
} else {
y
}
if (c > z) c else z
}
def min(x: Int, y: Int, z: Int): Int = {
val c = if (x < y){x}else{y}
if(c>z){z}else{c}
}
def main(args: Array[String]): Unit = {
val s = max(100, 100, 100)
println(s);
val m = min(1, 10, 100)
println(m);
}
}
object Base41 {
def getMaxAndMin(x: Int, y: Int, z: Int): (Int, Int) = {
val maxNum = Math.max(Math.max(x, y), z)
val minNum = Math.min(Math.min(x, y), z)
(maxNum, minNum)
}
def main(args: Array[String]): Unit = {
val result = getMaxAndMin(1, 2, 3)
println(s"最大值:${result._1},最小值:${result._2}")
}
}