Swift函数类型 geekband

2016-05-17  本文已影响59人  AAup

每个函数都有种特定的函数类型,由函数的参数类型和返回类型组成。

func addTwoInts(a: Int, b: Int) -> Int {
return a + b
}
func multiplyTwoInts(a: Int, b: Int) -> Int {
return a * b
}

//这是两个简单的数学模型:+-这两个类型都是传入int ,返回int值

//无参形式
func HelloWorld() {
println("hello, world")
}

//这个函数类型是:() -> (),或者叫“没有参数,并返回 Void 类型的函数”。没有指定返回类型的函数总返回Void。在Swift中,Void 与空的元组是一样的。

 //使用函数类型
 var mathFunction: (Int, Int) -> Int = addTwoInts
 //“定义一个叫做 mathFunction 的变量,类型是‘一个有两个 Int 型的参数并返回一个 Int 型的值的函数’,并让这个新变量指向 addTwoInts 函数”。
 println("Result: \(mathFunction(2, 3))")
 // prints "Result: 5"

你可以用(Int, Int) -> Int这样的函数类型作为另一个函数的参数类型。

func printMathResult(mathFunction: (Int, Int) -> Int, a: Int, b: Int) {
println("Result: \(mathFunction(a, b))")
}
printMathResult(addTwoInts, 3, 5)
// prints "Result: 8”

你也可以用函数类型作为另一个函数的返回类型。你需要做的是在返回箭头(->)后写一个完整的函数类型。

//这里是函数的类型都是 (Int) -> Int:
func stepForward(input: Int) -> Int {
return input + 1
}
func stepBackward(input: Int) -> Int {
return input - 1
}
上一篇下一篇

猜你喜欢

热点阅读