函数是模块化编程的基本单位,将一组完成特定功能的代码“独立”地组成一个执行单位,称为函数。函数的基本结构如下所示:
其中,func为定义函数的关键字;“函数名”是调用函数的入口;每个函数可以有多个参数,即可以有多个“参数标签 参数名称:参数类型”,一般地,各个参数的标签不同,参数名称不能相同;当函数没有参数时,“()”必须保留;“函数返回类型”为函数返回值的类型,如果一个函数没有返回值,则省略“->函数返回类型”,此时返回空类型,即Void。函数本身也有类型,由其“(参数类型)->函数返回类型”表示。
一个函数可以作为另一个函数的参数,此时的函数可以写成无函数名的“闭包”形式。所谓闭包,是指由“{ }”包围的一组完成特定功能的代码。函数可视为带有函数名的特殊形式的闭包,而常用的闭包没有“函数名”,参数和返回类型均位于“{ }”内部,闭包类似于C++语言的Lambda函数。
01、多返回值函数
从函数中返回多个值的方法有如下四种。
(1) 将元组作为函数的返回值,其典型语法如下:
上述函数语法中,返回值为一个包含两个元素的元组,这里元组的元素名可以省略。
(2) 将数组作为函数的返回值,其典型语法如下:
上述函数