函数的基本使用

46 阅读1分钟

定义函数

功能

求两个数较大者

格式:

  1. 有一个 =

  2. 返回值类型

    函数内的最后一个表达式或者语句的值,就是函数的返回值。

    Unit 表示没有返回值,调用这个函数时,不会接收到任何处理结果

def max(x:Int,y:Int) = {
  val t = if(x > y)  x  else  y

  t //就是返回值
}

//如果一个函数不需要参数,可以省略()

def say():Unit = {
  printf("qiqirong~")
}

def main(args:Array[String]): Unit = {
  val rst =max(1,100)

  println(s"${rst}")
  
  //调用一个没有()的函数,也不要加()
  say
}

求三个数较大者

/*
功能:求三个数较大者
分析

三选一
if(x>=y && x>=z) {
  x
} else if(y>=x && y>=z){
  y
} else {
  z
}

两次 二选一
val t = if(x > y)  x  else  y
  if(t > z) t else z
 */

def max(x:Int,y:Int,z:Int) = {
  val t = if(x > y)  x  else  y
  if(t > z) t else z
}

def main(args:Array[String]): Unit = {
  val rst =max(1000,200,100)

  println(s"${rst}")
}

函数返回多个值

求三个数最大值和最小值

def max(x:Int,y:Int,z:Int):(Int,Int) = {
  var maxValue = if(x > y)  x  else  y
  maxValue = if(maxValue>z) maxValue else z

  var minValue = if(x > y)  y  else  x
  minValue = if(minValue>z) z else minValue

  (minValue,maxValue)
}

def main(args:Array[String]): Unit = {
  val rst =max(1000,200,100)

  println(s"最小值${rst._1},最大值${rst._2}")
}

元组

元组表示不同类型值的集合,即元组可以用于存放不同类型的元素,例如可以存放整型、字符串、浮点型、自定义类型等等

//定义一个元组,使用()把数据包起来,就可以了
  val t = (1,"1",1.2,false,0)

  //取出元素,通过  。——数字符号  来访问
  println(t._3)
  println(t._4)