So far, we have learned about different functions and seen some examples of them. Let's see if we can combine them to solve problems that we may encounter in our day-to-day application development.
Let's assume that we need to receive an object from a backend system as follows:
struct User {
let name: String
let age: Int
}
let users = [
User(name: "Fehiman", age: 60),
User(name: "Neco", age: 29),
User(name: "Grace", age: 1),
User(name: "Tamina", age: 6),
User(name: "Negar", age: 27)
]
Then we need to calculate the total of ages by using totalAge in the users array. We can use a combination of the map and reduce functions to calculate totalAge as follows:
let totalAge = users.map { $0.age }.reduce(0) { $0 + $1 }
We were able to chain the map and reduce methods to achieve this.