swift学习笔记之—自定义函数的规则说明
原文出自:www.hangge.com 转载请保留原文链接:http://www.hangge.com/blog/cache/detail_517.html
1,无返回值的函数
func test(name:String){
}
2,返回一个返回值
func test(name:String) -> Bool{ return true }
3,返回由多个值组成的复合返回值
func test(name:String) -> (Int,Bool){ var position = 1 var visible = false return (position,visible) }
4,可变形参:可以接受0个或者任意数量的输入参数
func test(numbers:Int...) -> Int{ var count:Int = 0 for number in numbers{ count += number } return count }
6,如果想要同时改变函数内外的参数值,可以利用inout关键字,同时调用函数的时候给参数加上前缀“&”
var age = 22 add(&age) print(age) //23 func add(inout age:Int){ age += 1 }
7,可以使用函数类型的参数
func additive(a:Int, b:Int) -> Int{ return a + b } //函数类型的参数 func printAdditiveResult(addFun: (Int, Int) -> Int, a:Int, b:Int){ print("Result:\(addFun(a,b))") } printAdditiveResult(additive, a: 5 ,b: 7)
8,也可以使用函数类型的返回值
//定义个自增函数 func increase(input:Int) -> Int{ return input + 1 } //定义个自减函数 func reduce(input:Int) -> Int{ return input - 1 } //定义一个返回函数类型的函数 func chooseFunction(backwards:Bool) -> (Int) -> Int{ return backwards ? reduce : increase } //测试 let aFun = chooseFunction(3>2) print(aFun(3)) //2
注:笔记仅作学习记录只用!
本文来自博客园,作者:稻草人11223,转载请注明原文链接:https://www.cnblogs.com/hero11223/p/5664278.html