今天继续学习swift中的函数,函数的定义使用关键字:func
。
定义:
//函数
//定义
func helloFunc(name:String,age:Int)->String {
let _name = name
let _age = age
let info = _name + "_" + String(_age)
return info
}
print(helloFunc("LSW",age: 120))
//多重参数 需要注意的是调用时从第二个参数开始要添加参数的名称如 end: 5
func func1(start: Int,end:Int) -> Int {
return (end - start)
}
print(func1(1,end: 5))
//无参数 无返回值
func func2(){
print("Hello lsw!")
}
print(func2())
//多重返回值使用元组
func minMax(numArray: [Int]) -> (min:Int,max:Int) {
var curMin = numArray[0]
var curMax = numArray[0]
for value in numArray {
if value < curMin {
curMin = value
} else if value > curMax {
curMax = value
}
}
return (curMin,curMax)
}
//通常使用可选返回参数(min:Int,max:Int)?, 防止返回 nil
let value = minMax([10,-9,0,2])
print("min = \(value.min),max = \(value.max)")
//默认参数,可选参数,忽略外部参数使用 _, 常量参数和变量参数使用 var
//可变参数,可变参数永远在参数列表最后
func func3(nums:Double...)->Double {
var total:Double = 0
for num in nums {
total += num
}
return total/Double(nums.count)
}
print(func3(1,2,3,4))
//输入输出列表 使用关键字inout
func swapTwoNum(inout a:Int,inout b:Int) {
let temp:Int = a
a = b
b = temp
}
var a:Int = 10
var b:Int = 4
swap(&a,&b)
print("a = \(a),b = \(b)")
//函数类型可以作为参数和返回值类型使用