有没有办法使用Objective C查找月中的天数?

Tat*_*tat 10 cocoa objective-c

而不是计算月和闰年来做这个计算.有没有办法检查使用一些Apple内部API这样做?

我发现Java有这样的东西:

calendar.getActualMaximum(calendar.DAY_OF_MONTH) 
Run Code Online (Sandbox Code Playgroud)

Objective C有什么类似的东西吗?你.

mip*_*adi 53

您可以使用NSCalendar它的rangeOfUnit:inUnit:forDate方法.例如,要获取当月的天数:

NSCalendar *calendar = [NSCalendar currentCalendar];
NSRange range = [calendar rangeOfUnit:NSDayCalendarUnit inUnit:NSMonthCalendarUnit forDate:[NSDate date]];
NSUInteger numberOfDaysInMonth = range.length;
Run Code Online (Sandbox Code Playgroud)

  • 2月份测试:"rng.length"在闰年是29,在非闰年是28(正如预期的那样,但检查没有坏处) (4认同)
  • 仅供参考的信息`NSDayCalendarUnit`和`NSMonthCalendarUnit`是**iOS 8**及以上的`NSCalendarUnitDay`和`NSCalendarUnitMonth`. (3认同)