我想排序的對象數組中具有「MM-DD-YYYY」和布爾字段的字符串日期字段的對象數組。我想創建一個函數,按日期字段和布爾字段排序數組。我很難弄清楚如何做到這一點。 done字段默認設置爲false,並且在我的init func中不需要。通過字符串日期和布爾值排序對象數組IOS
var items = [BucketItem(title: "blah", des: "description", lat: 134.6, lon: 27.0, dat: "02-14-2017"),BucketItem(title: "blah", des: "description", lat: 134.6, lon: 27.0, dat: "02-11-2017"), BucketItem(title: "blah blah", des: "description", lat: 134.6, lon: 27.0, dat: "02-9-2017")]
我看着.sort
功能,但我也不怎麼的日期,因爲它們在字符串格式,我也不知道如何通過兩個領域,而不僅僅是一個排序比較。我想排序,如果布爾值爲true,那麼它自動少於布爾字段爲false的項目。如果兩個布爾值都是錯誤的,那麼它按日期排序。
上有一個在沒有布爾字段中輸入您例? –
用正確的dateFormat創建一個DateFormatter,然後'let date0 = dateformatter.date(from:$ 0.dat!)'和'let date1 = dateformatter.date(from:$ 1.dat!)',你的邏輯是什麼布爾?這種做法如何? – Larme
可能重複的[Swift - 對多個條件的對象排序數組](http://stackoverflow.com/questions/37603960/swift-sort-array-of-objects-with-multiple-criteria) – Alexander