函数的参数

39 阅读1分钟

函数的默认值格式

def 函数名(参数1:类型1=默认值1,参数2:类型2=默认值2)

object Base40 {
    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("小明",18,"男")
        hello("小花",18)
        hello()
    }
}

若只想改变年龄或改变姓名性别

object Base40 {
    def hello(name:String="小明",age:Int=17,gender:String="女"):Unit = {
        println(s"hello,我是${name},${age},岁,性别:${gender}")
    }
    def main(args: Array[String]): Unit = {
        hello(age=18)
        hello(gender="男",name="小李")
    }
}

创建接受变参的方法

object Base41 {
    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)
  }
}

判断能否构成三角形、判断是否为素数

object Base42 {
  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)
    val r1 = isPrime(9)
    println(r1)
    }
}