一:声明函数,调用函数:
使用func 来声明一个函数,使用名字和参数来调用函数,使用->来制定函数返回值。形式:func函数名(参数1:类型,参数2:类型,...)->返回结果类型{执行语句}。调用函数的方式:var变量名称=函数名(变量1,变量2,...)
1.普通常用的形式🌰(这里用中文举例):
2.无参数无返回值,一般用于执行一系列🌰:
3.不定参数,在参数类型后面加...🌰:
4.函数类型:包含参数和返回类型的简写形式,例:(Int,Int)->Int🌰:
5.函数可以嵌套。被嵌套的函数可以反问外侧函数的变量,你可以使用嵌套函数来重构一个太长或者太复杂的函数🌰:
6.函数可以作为返回值,函数是第一等类型,这意味着函数可以作为另一个函数的返回值。🌰:
7.函数也可以作为参数传入另一个函数,🌰:
二:闭包
1.函数实际上是一种特殊的闭包,你可以使用{}来创建一个匿名闭包。使用in将参数和返回值类型声明与闭包函数体进行分离:
2.有很多种创建闭包的方法。如果一个闭包的类型一致,比如作为一个回调函数,你可以忽略参数的类型和返回值。单个语句闭包会把它语句的值当做结果返回,🌰:
3.sort函数用于对数组排序,只接受一个参数,此参数描述两个元素先后的逻辑,🌰:
4.额外添加一条:可使用快捷参数,前缀$ +数字,从0开始递增,🌰: