Ash*_*nic 7 date-comparison swift3
我有两个约会,我想比较一下.我该如何比较日期?我必须约会对象.说modificateionDate
老了updatedDate
.
那么比较日期的最佳做法是什么?
Nir*_*v D 10
Date
现在符合Comparable
协议.所以你可以简单地使用<
,>
并==
比较两个Date
类型的对象.
if modificateionDate < updatedDate {
//modificateionDate is less than updatedDate
}
Run Code Online (Sandbox Code Playgroud)
每个@NiravD的答案Date
是Comparable
。但是,如果您要与给定的粒度进行比较,则可以使用Calendar
的 compare(_:to:toGranularity:)
例…
let dateRangeStart = Date()
let dateRangeEnd = Date().addingTimeInterval(1234)
// Using granularity of .minute
let order = Calendar.current.compare(dateRangeStart, to: dateRangeEnd, toGranularity: .minute)
switch order {
case .orderedAscending:
print("\(dateRangeEnd) is after \(dateRangeStart)")
case .orderedDescending:
print("\(dateRangeEnd) is before \(dateRangeStart)")
default:
print("\(dateRangeEnd) is the same as \(dateRangeStart)")
}
> 2017-02-17 10:35:48 +0000 is after 2017-02-17 10:15:14 +0000
// Using granularity .hour
let order = Calendar.current.compare(dateRangeStart, to: dateRangeEnd, toGranularity: .hour)
> 2017-02-17 10:37:23 +0000 is the same as 2017-02-17 10:16:49 +0000
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
11504 次 |
最近记录: |