【发布时间】:2018-06-16 17:16:17
【问题描述】:
我有一个这样的日期数组:-
var dateArray = ["2016-04-20", "2016-04-22", "2016-04-25", "2016-04-30"]
我想找出它们之间的天数差异。我做了一些研究,我只需要两个日期就可以做到这一点,这是我找到两个日期之间差异的方法
let dateFormatter = DateFormatter()
let isoDate = "2016-04-20"
let calendar = NSCalendar.current
let currentDate = Date()
在我的 viewDidLoad 方法中,我做到了这一点
override func viewDidLoad() {
super.viewDidLoad()
// let components = calendar.dateComponents([.day], from: )
dateFormatter.dateFormat = "yyyy-MM-dd"
dateFormatter.locale = Locale(identifier: "en_US_POSIX") //en_US_POSIX
let formatedStartDate = dateFormatter.date(from: isoDate)
let date = dateArray.compactMap { dateFormatter.date(from: $0) } // for date array
print(date)
let components = Set<Calendar.Component>([.day])
let differenceOfDate = Calendar.current.dateComponents(components, from: formatedStartDate!, to: currentDate )
print (differenceOfDate)
apiData()
}
正如您在代码中看到的,我创建了一个常量 let isoDate = "2016-04-20" 并更改为 formatedStartDate 并找出这个日期之间的差异到当前日期然后它起作用了。但是,如果我有自己的日期数组,我怎样才能找到我自己的日期数组的差异并将其按升序或降序排序。请帮忙?
【问题讨论】:
标签: ios swift swift4 nsdateformatter