这条线在Swift中意味着什么?

时间:2016-07-01 07:37:52

标签: ios swift

我现在正在阅读Swift 3书,并在那里找到了这一行:

func sumOf(numbers: Int...) -> Int {

}

并且只有这样的描述:

Functions can also take a variable number of arguments, collecting them into an array.

我没有得到(numbers: Int...)的含义。有人可以解释一下吗?

3 个答案:

答案 0 :(得分:6)

它被称为variadic arguments,解释here

  

可变参数接受零个或多个指定类型的值。   您使用可变参数来指定参数可以   调用函数时传递了不同数量的输入值。   通过插入三个句点字符来写出可变参数(...)   在参数的类型名称之后。

答案 1 :(得分:2)

根据上面的解释,可变参数是变量的参数,该函数在数字数组中采用可变数量的参数。因此,如果您想打印每个元素,可以通过

进行打印
func sumOf(numbers: Int...) -> Int {
    var sum:Int = 0

    for num in numbers {
        sum = sum + num
    }
    return sum
}

并且传递给这个数字的int元素的数量可能非常。

答案 2 :(得分:0)

使用带有varidic参数的函数的示例

func log(args: AnyObject ...) {
  var text = ""
  for arg in args {
    text += " \(arg)"
  }
  print("\(text)")
}

log(“Arg1”,“Arg2”)

log(“Arg1”,“Arg2”,“Arg3”)

相关问题