📅  最后修改于: 2023-12-03 15:09:54.204000             🧑  作者: Mango
在开发应用程序中,经常需要处理日期时间。Swift 提供了许多有用的 API 来处理日期和时间,包括日期和时间的计算。这篇文章将介绍如何快速减去日期。
Swift 中的一个有用的类是 DateComponents
。它允许我们按年、月、日、小时、分钟等粒度来访问日期或时间。我们可以使用它来减去或添加任意数量的时间。
let calendar = Calendar.current
var dateComponents = DateComponents()
dateComponents.day = -1
let today = Date()
let yesterday = calendar.date(byAdding: dateComponents, to: today)!
print(yesterday) // 显示前一天的日期
在上面的示例中,我们首先创建一个 Calendar
实例,然后创建一个 DateComponents
实例并将其日字段设置为 -1
。接下来,我们获取当天的日期并使用 Calendar
将其减去 1
天,从而得到前一天的日期。
Swift 中的另一个有用的类是 TimeInterval
。它表示秒数的双精度浮点数。我们可以使用它来表示任意精度的时间间隔。
let oneDay: TimeInterval = 86400
let today = Date()
let yesterday = today.addingTimeInterval(-oneDay)
print(yesterday) // 显示前一天的日期
在上面的示例中,我们首先将 oneDay
设置为一天的秒数。接下来,我们获取当天的日期并使用 addingTimeInterval
将其减去 oneDay
秒数,从而得到前一天的日期。
最后,我们可以使用 Calendar
类来减去日期。Calendar
提供了许多有用的方法来处理日期和时间。我们可以使用 Calendar
将日期减去指定的时间间隔。
let calendar = Calendar.current
let today = Date()
let yesterday = calendar.date(byAdding: .day, value: -1, to: today)!
print(yesterday) // 显示前一天的日期
在上面的示例中,我们首先创建了一个 Calendar
实例,然后获取当天的日期并使用 date(byAdding:to:)
将其减去 1
天,从而得到前一天的日期。
在 Swift 中,我们可以使用多种方法来快速减去日期。DateComponents
允许我们按照指定的粒度操作日期和时间,TimeInterval
允许我们表示任意的时间间隔,Calendar
提供了许多有用的方法来处理日期和时间。我们可以根据实际需求选择最适合的方法。