Swift version: 5.6
Everyone knows you can create ranges from two integers such as 1...5
, but few people realize the same applies to dates. This means you can create a date range using the same closed-range operator (...
) and half-open range operator (..<
) you already know, allowing you to check whether one date lies inside a range.
For example, we could create three Date
objects like this:
let now = Date.now
let soon = Date.now.addingTimeInterval(5000)
let later = Date.now.addingTimeInterval(10000)
We can then compare now
and later
into a single range like this:
let range = now...later
Finally, we can check whether that range contains the soon
date using the contains()
method of ranges, like this:
if range.contains(soon) {
print("The date is inside the range")
} else {
print("The date is outside the range")
}
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 8.0
This is part of the Swift Knowledge Base, a free, searchable collection of solutions for common iOS questions.
Link copied to your pasteboard.