swift学习第十天:函数
函数的介绍
- 函数相当于OC中的方法
- 函数的格式如下
func 函数名(参数列表) -> 返回值类型 {
代码块
return 返回值
}
- func是关键字,多个参数列表之间可以用逗号(,)分隔,也可以没有参数
- 使用箭头“->”指向返回值类型
- 如果函数没有返回值,返回值为Void.并且“-> 返回值类型”部分可以省略
import UIKit // 1.没有参数没有返回值 func about() -> Void { print("iPhone7s Plus") } func about1() { print("iPhone7s") } about() let view : UIView // 2.有参数没有返回值 func callPhone(phoneNum : String) { print("打电话给\(phoneNum)") } callPhone(phoneNum: "+86 110") // 3.没有参数有返回值 func readMessage() -> String { return "吃饭了吗?" } print(readMessage()) // 4.有参数有返回值 func sum(num1 : Int, num2 : Int) -> Int { return num1 + num2 } sum(num1: 20, num2: 30)
函数的使用注意
import UIKit // 1.内部参数和外部参数 // 内部参数:在函数内部可以看到的参数名称,称之为内部参数 // 外部参数:在函数调用时,可以看到的参数,成之为外部参数 // 默认情况下从第二个参数开始,既是内部参数也是外部参数 // 如果希望将第一个参数也声明称外部参数,只需要在标识符前加上外部参数的名称即可 func sum(num1 : Int, num2 : Int) -> Int { return num1 + num2 } // 函数的重载:函数名称相同,参数不同(1.参数的类型不同 2.参数的个数不同) func sum(num1 : Int, num2 : Int, num3 : Int) -> Int { return num1 + num2 + num3 } // 2.默认参数 func makeCoffee(coffeeName : String = "拿铁") -> String { return "制作了一杯\(coffeeName)咖啡" } makeCoffee(coffeeName: "雀巢") makeCoffee(coffeeName: "猫屎") makeCoffee() // 3.可变参数:...会把外界传进来的参数放在数组中,在函数内部遍历数组,相加求和 func sum(nums : Int...) -> Int { var result = 0 for num in nums { result += num } return result } sum(nums: 44, 20, 30, 44, 55, 66) // 4.引用参数 var m = 20 var n = 30 // 注意:默认情况形参都是常年 //func swapNum(var m : Int, var n : Int) { // let temp = m // m = n // n = temp //} // swapNum(20, n: 30) // 如果形参前面有inout,则需要传递指针到函数内 func swapNum( m : inout Int, n : inout Int) { let temp = m m = n n = temp } swapNum(m: &m, n: &n) print("m:\(m) n:\(n)") // 5.函数的嵌套使用(不常用) func test() { func demo() { print("demo") } print("test") demo() } test()