-
Book Overview & Buying
-
Table Of Contents
Beginning Swift [Instructor Edition]
By :
Open
Functional.playground at the
Introduction page.
First, let's reiterate what a function type is:
var sum: (Int, Int) -> Int
The type of
sum is a function that takes two
Int values and returns one
Int value. We can assign both functions and closures to it, as they are essentially the same thing:
func sumFunction(a: Int, b: Int) -> Int {
return a + b
}
let sumClosure = {(a: Int, b: Int) in return a + b}
sum = sumFunction
sum = sumClosureWe can also assign an operator to it:
sum = (+)
This is because an operator is a function (the parentheses around the + operator are just to signal that we want to use it as a function, not add things together right away). The definition of the
+ operator for
Int is:
static func +(lhs: Int, rhs: Int) -> Int
So whenever a function has a parameter of a function type, we can supply an operator, as long as the input and output match:
func perform(operation: (Int, Int) -> Int...
Change the font size
Change margin width
Change background colour