函数的介绍
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()