gpt4 book ai didi

objective-c - 两个NSDate之间的日期比较

转载 作者:行者123 更新时间:2023-12-01 17:15:50 25 4
gpt4 key购买 nike

这是我第一次比较Objective-C中的日期。我已经在网上搜索了一段时间,发现的所有示例都涉及从字符串构建NSDate,因此我决定在此处提出一个新问题...
我的问题如下:

我需要知道两个NSDate是否在同一天,而忽略了时间。我得到了两个NSArray,它们包含一组日期,并且一个接一个地排列,我需要确定第一个NSArray中的哪个与第二个数组在同一天。

- (void)setActiveDaysColor:(UIColor *)activeDaysColor
{
for (DayView *actualDay in _days)
{
NSDate *actualDayDate = [actualDay date];

for (NSDate *activeDayDate in self.dates)
{
// Comparison code
// If both dates are the same, tint actualDay with a different color
}
}
}

在此先感谢您,祝您度过愉快的一天。

亚历克斯

最佳答案

通过省略时间部分来创建新日期。并使用比较方法之一

  • earlierDate:
  • laterDate:
  • compare:
  • isEqualToDate


  • NSCalendar *calendar = [NSCalendar currentCalendar];
    NSInteger components = (NSDayCalendarUnit | NSMonthCalendarUnit | NSYearCalendarUnit);

    NSDateComponents *firstComponents = [calendar components:components fromDate:firstDate];
    NSDateComponents *secondComponents = [calendar components:components fromDate:secondDate];

    NSDate *date1 = [calendar dateFromComponents:firstComponents];
    NSDate *date2 = [calendar dateFromComponents:secondComponents];

    NSComparisonResult result = [date1 compare:date2];
    if (result == NSOrderedAscending) {
    } else if (result == NSOrderedDescending) {
    } else {
    }

    关于objective-c - 两个NSDate之间的日期比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10733426/

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