函数的基本使用

55 阅读2分钟

1.定义函数

格式:

屏幕截图 2025-10-09 084745.png

object Base41 {
  //定义一个函数
  //1.位置:可以邪在main里,也可以写在外面
  //2.要点
  //    返回值的类型
  //    省略return
  //返回值,可以省略return
  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);
  }
}

2.函数调用

[格式]:返回值=函数(参数)

def getSum(x:Int, y:Int): Int = {

     x + y

}  
val s = getSum(10,20)  
printf(s)

3.函数规则

1.只有一行可以省略{}。当Scala的函数体中只有一行表达式时可以省略{},输出结果依然不变。

2.最后一条语句为函数的返回值。当函数体中有多个语句存在时,返回最后一条语句的值。

3.函数的返回类型可以省略。它会自动推断。

4.没有形参,可以省略()

def getMax(x: Int, y: Int): Int = {  
  if (x > y)  
    x  
  else  
    y

}
object Base41 {
  //定义一个函数
  //1.位置:可以邪在main里,也可以写在外面
  //2.要点
  //    返回值的类型
  //    省略return
  //返回值,可以省略return
  /*
* 特殊的写法
* 1、没有参数列表,可以省略定义函数时的(),那么调用的时候,也不需要再加上()
* 2、函数的最后一条语句为函数的返回值
* 3、如果函数体只有一句代码,则可以省略{}
*/
  def getSum(x:Int,y:Int):Int= x + y

  def dosomething:Int = {
    println("xxx")
    1
  }

  //返回值可以省略return
  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);
  }
}

4.函数返回多个值

4.1定义一个函数,求三个数中的最大值和最小值

object Base42 {
  /**
   * 定义一个函数求三个数中的最大值
   */
  def max(x:Int,y:Int,z:Int):Int = {
  //  if(x > y){
  //    x
  //  }else{
  //    y
  //  }
    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);
  }
}

5.元组

5.1讲元组

元组表示不同类型值的集合,即元组可以用于存放不同类型的元素,例如可以存放整型、字符串、浮点型、自定义类型等等。Scala的元组类型可以使方法同时返回多个值,省略了中间部分的解析和集合的遍历

5.2定义元组:

第一种表示方式为:(元素1,元素2,…元素N)

第二种表示方式为:new TupleN(元素1,元素2,…元素N)。N最大为22