Swift version: 5.6
Swift has a helpful stride()
, which lets you move from one value to another using any increment – and even lets you specify whether the upper bound is exclusive or inclusive.
First, some examples. This first example counts from 0 to 10 in 2s:
for i in stride(from: 0, to: 10, by: 2) {
print(i)
}
This second example counts from 0 up to to 0.5, exclusive:
for i in stride(from: 0, to: 0.5, by: 0.1) {
print(i)
}
Both those examples use stride(from:to:by:)
, which counts from the start point up to by excluding the to
parameter. If you want to count up and including the to
parameter, you should use stride(from:through:by:)
, like this:
for i in stride(from: 0, through: 10, by: 2) {
print(i)
}
BUILD THE ULTIMATE PORTFOLIO APP Most Swift tutorials help you solve one specific problem, but in my Ultimate Portfolio App series I show you how to get all the best practices into a single app: architecture, testing, performance, accessibility, localization, project organization, and so much more, all while building a SwiftUI app that works on iOS, macOS and watchOS.
Sponsor Hacking with Swift and reach the world's largest Swift community!
Available from iOS 7.0
This is part of the Swift Knowledge Base, a free, searchable collection of solutions for common iOS questions.
Link copied to your pasteboard.