如何获得一年中的月份数?

我想要一个函数,它将返回当前一个月的当前一周数组。

例如,如果当前月份是2015年8月,则会返回[32,33,34,35,36]。 如果月份是2015年2月,则会返回[6,7,8,9]。

有没有办法,我怎么能得到这个?

在苹果文档NSCalendar类有一个选项来获得本年的数量,但这不是我所需要的。

如前所述, NSCalendar有一个方法rangeOfUnit:inUnit:forDate: 适当的日历单位是CalendarUnitWeekOfYearCalendarUnitMonth

对于语言环境和星期设置的第一个工作日,结果可能会有所不同。

 let calendar = NSCalendar.currentCalendar() let weekRange = calendar.rangeOfUnit(NSCalendarUnit.CalendarUnitWeekOfYear, inUnit: .CalendarUnitMonth, forDate: NSDate()) let weekArray = Array(weekRange.location..<weekRange.location + weekRange.length) 

Swift 3:

 let calendar = NSCalendar.current let weekRange = calendar.range(of: .weekOfYear, in: .month, for: Date()) 

NSCalendar不会直接给出任何API来获取一个月内的周数。 你必须解决NSDateComponents和NSDate。

我可以给你提示,但正如史蒂夫所build议的,你需要先自己尝试一下。

尝试得到一个范围,看看NSCalendar的方法rangeOfUnit:inUnit:想想,你如何使用这种方法来获得你想要的输出。

Interesting Posts