新建一个swift文件,在swift文件中封装第三方框架方法
另一种方法,在一个swift中使用@_exported import xxx 方法导入
使用元组交换两个数字
//使用元组交换两个数字的值
func swapValues(_ v1 : inout Int, _ v2: inout Int){
(v1, v2) = (v2, v1)
}
var num1 = 111
var num2 = 222
swapValues(&num1, &num2)
print("num1 = \(num1)", "num2 = \(num2)") //num1 = 222 num2 = 111
swap(&num1, &num2) //系统自带方法,再次调用被交换回原值
print("num1 = \(num1)", "num2 = \(num2)") //num1 = 111 num2 = 222
//函数重载
func sum (v1: Int, v2: Int) -> Int {
print("走这里1")
return v1 + v2
}
func sum(_ v1: Int,_ v2: Int) -> Int {
print("走这里2")
return v1 + v2
}
func sum(v1: Int, v2: Int, v3: Int = 10) -> Int {
print("走这里3")
return v1 + v2 + v3
}
func sum(_ numbers: Int...) -> Int {
var total = 0
for number in numbers {
total += number
}
return total
}
// 会调用sum(v1: Int, v2: Int)
sum(v1: 10, v2: 20)
sum(11,22,33) //如传参只有两个,会报错Ambiguous use of 'sum'
//可变参数Variadic Parameter. 一个函数最多包含一个可变参数,并且在可变参数后面的参数不能使用_这种方式来忽略标签显示
func sum(_ numbers: Int..., name nickname: String = "nickname", _ other: String = "") -> Int{
var total = 0
for number in numbers {
total += number
}
print("nickname=\(nickname)", "total=\(total)") //nickname=nickname total=60
return total
}
sum(10,20,30)
//默认参数 函数调用
func test(_ first: Int = 10, _ middle: Int, _ last: Int = 22){
print("first=\(first)\nmiddle=\(middle)\nlast=\(last)")
}
网友评论