我正在使用NSSortDescriptor按升序對NSDate對象進行排序。但是,我需要沒有日期才能在列表的最底部,而現在他們在頂部。NSSortDescriptor和零值
9
A
回答
9
最後,我已經決定了具有零值是不是一個好主意,如果我想要的是零值出現在升序列表的底部,我應該將日期設置爲[NSDate distantFuture],然後在顯示它們之前檢查它。事實證明,這在應用程序中也具有更多的語義意義。
6
當然,我應該使用
initWithKey:ascending:selector:
,寫我自己的比較選擇
7
看起來你已經有了一個解決方案,但對於其他人仍然使用無NSDates,並在底部,我使用下面的代碼,我排序降序,然後扭轉發送到對象的順序比較。
_sortDescriptor = [NSSortDescriptor sortDescriptorWithKey:@"dueDate"
ascending:NO
comparator:^NSComparisonResult(id obj1, id obj2) {
return [obj2 compare:obj1];
}];
+0
如果obj1爲零且obj2是日期,那麼比較是否沒有未定義的行爲? – 2014-12-16 21:52:43
相關問題
- 1. NSSortDescriptor
- 2. NSSortDescriptor不排序的值
- 3. NSSortDescriptor訂單值小於10.0
- 4. 空和零值
- 5. mysql零和空值
- 6. NSSortDescriptor和NSPredicate進行排序和過濾
- 7. NSSortDescriptor對可能爲零的屬性進行排序
- 8. awk計數零和非零字段值:
- 9. NSSortDescriptor按結構的值排序
- 10. NSSortDescriptor有關係
- 11. NSSortDescriptor不工作
- 12. Swift中的NSSortDescriptor
- 13. NSSortDescriptor問題
- 14. NSSortDescriptor降序
- 15. NSSortDescriptor優先
- 16. 我想用NSSortDescriptor
- 17. 使用NSSortDescriptor
- 18. NSSortDescriptor問題
- 19. iPhone - 在NSSortDescriptor
- 20. NSSortDescriptor對NSFetchedResultsController
- 21. 對象釋放和零值
- 22. PHP和零值浮點數
- 23. SQL平均值和零點
- 24. NSSortDescriptor和NSFetchedResultsController的自定義選擇器
- 25. NSSortDescriptor和SortedArrayUsingSelector有什麼區別
- 26. 返回值NULL和零差值
- 27. NSFetchedResultsController與許多NSSortDescriptor
- 28. 使用NSSortDescriptor排序
- 29. NSSortDescriptor忽略Comperator塊
- 30. 排序實體 - NSSortdescriptor
正是。你定製邏輯來處理nil值,然後調用[myNSDateInstance compare:secondDate];如果第二個日期不是零。 – 2010-01-07 17:40:59
這不會有幫助,因爲'compare:'將被髮送到NSDate實例;如果'nil'結束接收者,結果將是'NSOrderedSame',並且如果接收者不是'nil'但是參數是,我不認爲任何特定的結果是有保證的。 – 2010-01-07 18:07:43
不幸的是,當從核心數據提取時,這不起作用。 – pkamb 2015-08-07 23:44:22