前言:
Swift
已经被越来越多的公司使用起来,因此Swift
的学习也应该提上日程了。本篇就先探索Swift
中的函数,主要包括以下几个方面:
-
Swift函数定义
-
Swift函数参数与返回值
-
Swift函数重载
-
内敛函数优化
-
函数类型、嵌套函数
一、Swift函数定义
函数的定义包含函数名、函数体、参数及返回值,定义了函数会做什么、接收什么以及返回什么。函数名前要加上 func
关键字修饰。如下为一个完整的函数定义事例:
func greet(person: String) -> String { let greeting = "Hello, " + person + "!" return greeting }
-
函数名:greet
-
参数:圆括号中(person: String)即为参数,person为参数名,String为类型
-
返回值:使用一个 -> 来明确函数的返回值,在该事例中定义了一个 String类型的返回值
作为一个开发者,有一个学习的氛围跟一个交流圈子特别重要,这是一个我的iOS交流群:834688868,不管你是大牛还是小白都欢迎入驻 ,分享BAT,阿里面试题、面试经验,讨论技术, 大家一起交流学习成长!
如果你正在面试,或者正准备跳槽,不妨看看我精心总结的面试资料:https://gitee.com/Mcci7/i-oser 来获取一份详细的大厂面试资料 为你的跳槽加薪多一份保障
二、函数返回值与参数
2.1 函数返回值
从返回值的角度看,函数可以分为有返回值和无返回值两种。无返回值的函数可以有如下三种定义方式:
func testA() -> Void { } func testB() -> () { } func testC() { } let a = testA() let b = testB() let c = testC()
打印 a、b、c 可以发现,三者的类型均为()
,即空元组。在 Void 的定义处也可以发现,Swift中 Void 就是空元组。
[图片上传中…(image-1a4ab5-1637226038732-4)]
也就是说上面三种方式是等价的,都表示无返回值的情况,不过从代码简洁程度上来说,最后一种更方便使用。
还有一种函数有返回值的情况,如同第一节中所述的函数定义方式,即为一种返回值为String
的函数。在Swift
中,函数的返回值可以隐式返回,如果函数体中只有一句返回代码,则可以省略return
关键字。如下代码所示,两种写法是等价的:
fun