Swift has a built-in higher-order function named map that can be used with collection types such as arrays. The map function solves the problem of transforming the elements of an array using a function. The following example presents two different approaches to transform a set of numbers:

let numbers = [10, 30, 91, 50, 100, 39, 74]
var formattedNumbers: [String] = []

for number in numbers {
    let formattedNumber = "\(number)$"

let mappedNumbers = { "\($0)$" }

The first approach to solve the problem is imperative and uses for-in loops to go through the collection and transform each element in the array. This iteration technique is known as external iteration because we specify how to iterate. ...

Get Swift 3 Functional Programming now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.