我想检查两个日期是否相等,其中相等意味着它们具有相同的分钟值。我不想比较秒值。
前任:
// should be equal
11/12/17 11:19:29
11/12/17 11:19:03
// not equal
11/12/17 11:19:59
11/12/17 11:20:00
我想做的一种方法是获取时间组件并遍历每个组件。但我想知道是否有更快或更清洁的方法。
Calendar
类为此提供了compare(_:to:toGranularity:)
方法:
let result = Calendar.current.compare(date1, to: date2, toGranularity: .minute)
result
将指示 date1 是比 date2>、= 还是<。
Swift 5
您可以返回一个布尔值:
let dateCompare = Calendar.current.isDate(date1, equalTo: date2, toGranularity: .minute)
if dateCompare == false {
// Different date, hour and minute
} else {
// Same date, hour and minute
}