我是Swift的新手。 我有一個大(只爲我)的問題。 我有NSUserDefaults什麼我需要刪除到每天結束。 我知道我需要爲此比較日期,但我不知道如何去做。檢查兩個NSDate實例是否包含相同的日期值
1
A
回答
0
您應該使用NSCalendar方法而isDate(inSameDayAsDate :),所以我們可以創建一個使用該方法返回一個布爾值的NSDate擴展:
extension NSDate {
struct Calendar {
static let gregorian = NSCalendar(calendarIdentifier: NSCalendarIdentifierGregorian)!
}
func isInSameDayAs(date date: NSDate) -> Bool {
return Calendar.gregorian.isDate(self, inSameDayAsDate: date)
}
}
用法:
let date1 = NSDate()
let date2 = NSDate().dateByAddingTimeInterval(60)
if date1.isInSameDayAs(date: date2){
print("true") // "true\n"
} else {
print("false")
}
0
給出兩個日期dataA
和dateB
let calendar = NSCalendar.currentCalendar()
var componantsA = calendar.components(NSCalendarUnit.MonthCalendarUnit | NSCalendarUnit.YearCalendarUnit | NSCalendarUnit.DayCalendarUnit, fromDate:dateA)
var componantsB = calendar.components(NSCalendarUnit.MonthCalendarUnit | NSCalendarUnit.YearCalendarUnit | NSCalendarUnit.DayCalendarUnit, fromDate:dateB)
var sameDay:Bool = (componantsA.day == componantsB.day) && (componantsA.month == componantsB.month) && (componantsA.year == componantsB.year)
+0
非常感謝你,守谷!它解決了我的問題! :) –
相關問題
- 1. 檢查是否包含兩個日期
- 2. 兩個實例包含相同的值
- 3. 如何檢查兩個字典是否包含相同的值?
- 4. 檢查兩個列表是否包含相同的元素
- 5. 檢查兩個字符串是否包含相同的模式
- 6. 檢查兩個arraylist是否包含相同的元素
- 7. 檢查兩個數組是否包含相似的值
- 8. 檢查兩個不同列中的值是否包含匹配
- 9. Java - 如何檢查兩個日期值是否相隔X天
- 10. 檢查2個不同的等值實例(包含示例)
- 11. Java,如何檢查兩個2d數組是否包含相同的值
- 12. 檢查字符串是否包含兩次相同的字符
- 13. 檢查兩個查詢是否相同
- 14. mqsql - 檢查選定的行是否包含相同的值
- 15. 如何檢查兩個日期是否在同一日曆日
- 16. 檢查兩個列表包含相同的屬性值
- 17. 檢查日期列表是否包含特定日期
- 18. 如何檢查一個字符串是否包含兩個相同的字符?
- 19. 檢查數據是否包含同一個字符的多個實例
- 20. Swift:檢查兩個NSDates是否相同
- 21. 檢查兩個json是否相同
- 22. 檢查兩個ID是否相同
- 23. 檢查兩個jar類是否相同
- 24. 檢查兩個Dask是否相同
- 25. 如何檢查一個Bool值列表是否包含相同的值?
- 26. 檢查2個字符串是否包含相同的字符?
- 27. 查詢以檢查日期是否在兩個月的日期值之間
- 28. 檢查兩個對象實例以查看它們是否相同
- 29. 如何檢查日期是否被python中的另一個日期所包含?
- 30. 檢查一個字符串是否包含日期
獅子座,這是正確的,只有當應用程序將在這個間隔(60秒)工作,這段代碼纔會做些什麼?但如果用戶將在11關閉應用程序並在1打開? –
@ЕгорКузнецов60秒只是在同一天創建一個不同的日期,當然如果你在11:59:0xpm的情況下嘗試這個,如果會給你2天不同的日期 –
你只需要將NSDate()保存到NSUserDefaults和下一個用戶打開應用程序的所有時間是檢查Now(NSDate())是否與保存的日期不同。如果不是在發佈時刪除它並保存新日期 –