如何在不比较微秒的情况下比较 2 个日期?

How to compare 2 date without compare microsecond?

我正在关注 。但是当我 运行 在 playground 中使用下面的代码时,它有可能被打印为“false”。 我认为原因是初始化 Date 对象时的微秒。

有什么更好的办法吗?或者不用微秒怎么比较?

let date1 = Date()
let date2 = Date()
print(date1)
print(date2)

print(date1 == date2)

更新 我试图以毫秒为单位打印,但我看到它们是一样的。

Calender 提供了一个方便的 API 来做到这一点

let date1 = Date()
let date2 = Date()

let isInSameSecond = Calendar.current.compare(date1, to: date2, toGranularity: .second) == .orderedSame

toGranularity 更改为所需级别。