函数的基本使用

57 阅读1分钟

1:函数的定义

定义函数的格式如下:

object basic27 {

  /**
   * 函数基本使用
   *
   */
  def max(x:Int,y:Int):Int={
    if(x >y)
      x
    else
      y

  }

2:函数的调用

object basic27 {
  //定义函数
  //作用:找到x,y中的较大者
  def max(x:Int,y:Int):Int={
    if(x >y)
      x
    else
      y

  }

  def main(args: Array[String]): Unit = {
    
    var rst=max(2,3) //调用函数
    println(s"2 和 3的较大者是:${rst}")
  }
}

3:函数的返回值

1.指定返回值类型
2.函数内,最后一个表达式(最后一句代码)就是函数的返回值
3.Unit 表示这个函数没有返回值(void)
object basic29 {

  //函数返回多个数据
  //作用:找到x,y,z中的最大者 和 最小者
  //(Int,Int) 是返回的类型,表示这个函数的返回值中有两个整数

  def max(x:Int,y:Int,z:Int):(Int,Int)={
    var maxValue = if(x > y) x else y //x,y的较大者
    maxValue = if(maxValue >z) maxValue else z

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

    //返回一个容器,包含两个值
    (minValue,maxValue)
  }

  def main(args: Array[String]): Unit = {
    var rst = max(100,20,200) //调用函数
    println(s"最小值是:${rst._1},较大者是:${rst._2}")
  }
}

4:参数

1.如果没有参数,在定义函数时,可以省略(),在调用函数的时候,就不能添加()
object basic27 {
  //定义函数
  //作用:找到x,y中的较大者
  def max(x:Int,y:Int):Int={
    if(x >y)
      x
    else
      y

  }

  //如果没有参数,可以省略()
  def say():Unit={
    println("hello world!")
  }

  def main(args: Array[String]): Unit = {

    say()
  }
}

5:元组

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

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

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

3.访问元组

元组通过Tuple_INDEX的方式访问元组中的元素,Tuple表示元组,INDEX表示索引。

object basic30 {
  def main(args: Array[String]): Unit = {
    //元组:把数据放在一个容器
    var rst = (1, "a" ,1.75, "hello", true, 2)
    //访问元组的数据 ._数学编号
    println(rst._6)
  }

}