Swift version: 5.10
The reduce()
method iterates over all items in array, combining them together somehow until you end up with a single value. The “somehow” is specified by a closure you provide, for example you might want to count how many characters are provided in an array of names, which looks like this:
let names = ["Taylor", "Paul", "Adele"]
let count = names.reduce(0) { $0 + $1.count }
print(count)
That starts with a total of 0 (the parameter passed in to reduce()
, then adds that to the count of each string in the array. So, it starts by adding 6 for Taylor (so the running total is 6), then adds 4 for Paul (so the running total is 10), then adds 5 more for Adele (so the running total is 15.)
SPONSORED Alex is the iOS & Mac developer’s ultimate AI assistant. It integrates with Xcode, offering a best-in-class Swift coding agent. Generate modern SwiftUI from images. Fast-apply suggestions from Claude 3.5 Sonnet, o3-mini, and DeepSeek R1. Autofix Swift 6 errors and warnings. And so much more. Start your 7-day free trial today!
Sponsor Hacking with Swift and reach the world's largest Swift community!
Available from iOS – learn more in my book Pro Swift
This is part of the Swift Knowledge Base, a free, searchable collection of solutions for common iOS questions.
Link copied to your pasteboard.