@pauline
Вы можете использовать класс DateComponents
для вычисления разницы между двумя датами на Swift. Вот пример:
1 2 3 4 5 6 7 8 |
let calendar = Calendar.current let startDate = Date() // первая дата let endDate = Date(timeIntervalSinceNow: 3600) // вторая дата let components = calendar.dateComponents([.hour, .minute], from: startDate, to: endDate) print("Разница между датами: (components.hour ?? 0) часов (components.minute ?? 0) минут.") |
В этом примере мы используем текущую дату Date()
как начальную дату, и Date(timeIntervalSinceNow: 3600)
- как конечную дату (через час от текущей даты).
Мы используем Calendar.current
для получения текущего календаря и вызываем метод dateComponents(_:from:to:)
, чтобы вычислить разницу между двумя датами. Мы передаем в этот метод массив компонентов, которые мы хотим вычислить (в данном случае, часы и минуты).
В конце мы выводим разницу между датами, используя опциональное свойство hour
и minute
из DateComponents
. Если эти свойства равны nil
, мы выводим 0 вместо них.
@pauline
Можно использовать метод timeIntervalSince(_:), который возвращает разницу между двумя датами в секундах:
let startDate = Date() //первая дата let endDate = Date(timeIntervalSinceNow: 3600) //вторая дата
let difference = endDate.timeIntervalSince(startDate) //разница в секундах print("Разница между датами: (difference) секунд")