创建接受变参的方法

47 阅读1分钟

【提问】 如何定义一个函数,它能接收数量不定的参数,并计算它们的累加?例如:getSum(1,2,3) 得到6, getSum(1,2,3,4) 得到10?

object test38 {
//  可变参数
//  格式: 参数类型*
//  要点:
//  1.类型要一致
//  2.可变参数必须在列表的最后
  def getSum(args:Int*): Int = {
    var sum=0
    for(i <- args){
      sum+=i
    }
    sum
  }

  def main(args: Array[String]): Unit = {
    val rst1=getSum(1,2,3) //6
    val rst2=getSum(1,2,3,4) //10
    val rst3=getSum(1,2) //3
    println(rst1,rst2,rst3)
  }

}

功能:求所有参数的累加

变参特点:函数中的参数的个数是不确定的。思路:找一个容器把参数全部装起来!!!

写法: 参数类型后面加*