函数定义
使用 func 定义一个函数。调用函数使用他的名字加 上小括号中的参数列表。使用 -> 分隔参数的名字和 返回值类型。
函数声明:
func greet(name: String, day: String) -> String { return "Hello \(name),today is \(day)." }
函数调用:greet("Bob", "Tuesday")
无返回值函数
func sayGoodbye(personName: String) { println("Goodbye, \(personName)!") } sayGoodbye("Tony")
多返回值函数
使用元组类型返回多个值:
func count(string: String) -> (vowels: Int, consonants:Int, others: Int) { var vowels = 0,consonants = 0, others= 0 for character in string { switch String(character).lowercaseString { case "a","e", "i","o", "u": ++vowels case "b","c", "d","f", "g", "h", "j", "k", "l", "m","n", "p","q", "r","s", "t", "v", "w","x", "y", "z": ++consonants default: ++others } } return (vowels, consonants, others) } let total = count("somearbitrary string!") println("\(total.vowels) 元音 , \(total.consonants) 辅 音")
嵌入函数
函数嵌套: 相当于函数指针
func chooseStepFunction(backwards: Bool) ->(Int) -> Int { func stepForward(input: Int) -> Int { return input + 1 } func stepBackward(input: Int) -> Int { return input - 1 } return backwards ? stepBackward : stepForward } var currentValue = -4 let moveNearerToZero = chooseStepFunction(currentValue> 0) while currentValue != 0{ println("\(currentValue)... ") currentValue = moveNearerToZero(currentValue) }
Swift交流讨论论坛论坛:http://www.cocoagame.net
欢迎加入Swift技术交流群:362298485
时间: 2024-11-06 21:46:37