1.函数的基本形式函数
func greetAgain(person: String) -> String {spa
return "Hello again, " + person + "!"it
}io
print(greetAgain(person: "Anna"))class
2.用元组做为返回值标签
func minMax(array: [Int]) -> (min: Int, max: Int) {co
var currentMin = array[0]let
var currentMax = array[0]return
for value in array[1..<array.count] {参数
if value < currentMin {
currentMin = value
} else if value > currentMax {
currentMax = value
}
}
return (currentMin, currentMax)
}
3.参数标签
全部的参数都必须有一个独一无二的名字。虽然多个参数拥有一样的参数标签是可能的,可是一个惟一的函数标签可以使你的代码更具可读性
print(greetAgain(person: "Anna"))
4.参数能够带默认值
func someFunction(parameterWithoutDefault: Int, parameterWithDefault: Int = 12) {
// 若是你在调用时候不传第二个参数,parameterWithDefault 会值为 12 传入到函数体中。
}
someFunction(parameterWithoutDefault: 3, parameterWithDefault: 6) // parameterWithDefault = 6
someFunction(parameterWithoutDefault: 4) // parameterWithDefault = 12
5.可变参数
一个函数最多拥有一个可变参数
func arithmeticMean(_ numbers: Double...) -> Double {
var total: Double = 0
for number in numbers {
total += number
}
return total / Double(numbers.count)
}
6.输入输出参数
注意调用函数的时候用&符号
func swapTwoInts(_ a: inout Int, _ b: inout Int) {
let temporaryA = a
a = b
b = temporaryA
}
var someInt = 3
var anotherInt = 107
swapTwoInts(&someInt, &anotherInt)
print("someInt is now \(someInt), and anotherInt is now \(anotherInt)")