这是 Costique 的 swift 解决方案,但带有一点 swift flash。
func ...(lhs:NSDate, rhs:NSDate) -> [NSDate] {
var dates: [NSDate] = []
var cal = NSCalendar.currentCalendar() // or NSCalendar(calendarIdentifier: NSCalendarIdentifierGregorian)
var days = NSDateComponents()
var dayCount = 0
while true {
days.day = dayCount
let date:NSDate = cal.dateByAddingComponents(days, toDate: lhs, options: NSCalendarOptions.allZeros)!
if date.compare(rhs) == .OrderedDescending {
break
}
dayCount += 1
dates.append(date)
}
return dates
}
let fromDate = NSDate(timeIntervalSince1970: 1440711319)
let toDate = NSDate(timeIntervalSince1970: 1441316129)
fromDate...toDate // => ["Aug 27, 2015, 2:19 PM", "Aug 28, 2015, 2:19 PM", "Aug 29, 2015, 2:19 PM", "Aug 30, 2015, 2:19 PM", "Aug 31, 2015, 2:19 PM", "Sep 1, 2015, 2:19 PM", "Sep 2, 2015, 2:19 PM", "Sep 3, 2015, 2:19 PM"]