SWIFT 2 - 排序多维数组按日期 [英] SWIFT 2 - Sort Multi dimensional array by date
本文介绍了SWIFT 2 - 排序多维数组按日期的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想按日期排序我的数组,我一直在努力,几乎一切,但没有结果。
这是我得到了接近但我得到一个华林:
常量'sortedDate推断出有类型()
块引用>VAR名= [字符串]() 名称= [
[AAA,鲍勃,CCC,26-10-2015 17:50],
[AAA-1,BBB-1,CCC-1,22-10-2015 11:20],
[AAA-2,BBB-2,BBB-2,2015年1月3日17:00]
]让sortedDate = Names.sortInPlace({返回$ 0 3] .compare($ 1 [3])== NSComparisonResult.OrderedAscending}) 打印(\\(sortedDate))
解决方案您的数据
字符串
,没有日期。使用NSDateFormatter
将其转换为的NSDate
:让名字= [
[AAA,鲍勃,CCC,26-10-2015 17:50],
[AAA-1,BBB-1,CCC-1,22-10-2015 11:20],
[AAA-2,BBB-2,BBB-2,2015年1月3日17:00]
]让格式化= NSDateFormatter()
formatter.dateFormat =DD-MM-YYYY HH:MM让sortedDate = {names.sort
让DATE1 = formatter.dateFromString($ 0 3])
让DATE2 = formatter.dateFromString($ 1 [3])
返回日期1 .timeIntervalSince1970&LT?; DATE2?.timeIntervalSince1970
}I am trying to sort my array by date, I have been trying almost everything but with no results.
This is the closer I got but I get a waring:
Constant 'sortedDate' inferred to have type ()
var Names = [[String]]() Names = [ ["aaa", "bob", "ccc", "26-10-2015 17:50"], ["aaa-1", "bbb-1", "ccc-1", "22-10-2015 11:20"], ["aaa-2", "bbb-2", "bbb-2", "01-03-2015 17:00"] ] let sortedDate = Names.sortInPlace({ return $0[3].compare($1[3]) == NSComparisonResult.OrderedAscending }) print("\(sortedDate)")
解决方案Your data is
String
, not date. Use anNSDateFormatter
to convert it toNSDate
:let names = [ ["aaa", "bob", "ccc", "26-10-2015 17:50"], ["aaa-1", "bbb-1", "ccc-1", "22-10-2015 11:20"], ["aaa-2", "bbb-2", "bbb-2", "01-03-2015 17:00"] ] let formatter = NSDateFormatter() formatter.dateFormat = "dd-MM-yyyy HH:mm" let sortedDate = names.sort { let date1 = formatter.dateFromString($0[3]) let date2 = formatter.dateFromString($1[3]) return date1?.timeIntervalSince1970 < date2?.timeIntervalSince1970 }
这篇关于SWIFT 2 - 排序多维数组按日期的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文