gpt4 book ai didi

ios - Cocoa-Touch:如何查看两个 NSDate 是否在同一天?

转载 作者:IT老高 更新时间:2023-10-28 11:26:31 25 4
gpt4 key购买 nike

我需要知道两个 NSDate 实例是否都来自同一天。

有没有比获取 NSDateComponents 并比较日/月/年更简单/更好的方法?

最佳答案

如果您的目标是 iOS 8(和 OS X 10.9)或更高版本,那么 Joe's answer只是为此目的使用 NSCalendar 中的新方法是一个更好的解决方案:

-[NSCalendar isDate:inSameDayAsDate:]

对于 iOS 7 或更早版本:NSDateComponents 是我的首选。像这样的东西怎么样:

- (BOOL)isSameDayWithDate1:(NSDate*)date1 date2:(NSDate*)date2 {
NSCalendar* calendar = [NSCalendar currentCalendar];

unsigned unitFlags = NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit;
NSDateComponents* comp1 = [calendar components:unitFlags fromDate:date1];
NSDateComponents* comp2 = [calendar components:unitFlags fromDate:date2];

return [comp1 day] == [comp2 day] &&
[comp1 month] == [comp2 month] &&
[comp1 year] == [comp2 year];
}

关于ios - Cocoa-Touch:如何查看两个 NSDate 是否在同一天?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1561554/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com