是否有一個函數使用NSSortDescriptor數組比較兩個對象並返回NSComparisonResult? (把它們放在一個數組中不會識別出相等性。)使用描述符數組比較2個對象
1
A
回答
0
你可以很容易地自己寫這個函數。只需遍歷數組。棘手的設計決定是爲什麼當不同的比較器返回不同的結果時。例如。比方說,我們正在比較一輛法拉利和一大堆污垢,使用兩種比較儀:成本和尺寸。法拉利的成本更高,但污垢堆積更大。我們說什麼是「更大」?這是您必須根據您的具體問題域進行的設計決策。
0
這應該正常工作:
+ (NSComparisonResult)compareObject:(id)firstObject toObject:(id)secondObject withSortDescriptors:(NSArray<NSSortDescriptor *> *)sortDescriptors {
NSComparisonResult result;
NSUInteger index = 0;
do {
NSSortDescriptor *sortDescriptor = [sortDescriptors objectAtIndex:index];
result = [sortDescriptor compareObject:firstObject toObject:secondObject];
index += 1;
} while (result == NSOrderedSame && index < sortDescriptors.count);
return result;
}
相關問題
- 1. 用2種描述符排序數組
- 2. 比較2個對象
- 3. OpenCV的SURF比較描述
- 4. 如何比較2個字符數組
- 5. 比較對象數組
- 6. NSMutable數組對象比較
- 7. 如何比較2個數組對象中的一個數值對象
- 8. 比較2個數組php
- 9. 比較2個數組
- 10. 比較2組對象的值
- 11. 如何比較兩個數組對象
- 12. 如何比較兩個對象數組
- 13. HOG描述符用於對象檢測
- 14. 比較2 imageData對象
- 15. 的Struts 2 - 比較對象
- 16. 比較2 UIImage對象
- 17. 如何在對象Typescript中使用這個描述符?
- 18. 使用Lodash比較對象數組和整數數組
- 19. Ext2:組描述符
- 20. 比較2個自定義對象 - C#
- 21. iOS - 比較數組中的2個數組和對象 - 邏輯問題
- 22. 將一個圖像中的SURF描述符與其他圖像中的描述符列表進行比較
- 23. 如何比較兩個數組對象與嵌套對象?
- 24. 使用node.js比較兩個對象
- 25. 比較2 int數組
- 26. 比較2 wchar_t數組
- 27. Symfony 2/PHP比較數組中對象的區別?
- 28. 比較對象數組,最佳方式
- 29. 比較具有對象的數組
- 30. 比較包含數組的對象
A「內置」功能會更簡單的代碼,並且可以實現一些優化。至於你的例子,NSSortDescriptor中的選擇器將知道如何比較兩者。如果排序描述符本身是相互排斥的,我不會使用一個描述符數組。現在,我已經自己實現了這個功能,但我仍然想知道這樣的功能是否存在。謝謝回覆。 – 2010-09-25 07:54:35