如何在NSArray中对两个不同的对象进行排序?

时间:2012-02-10 15:29:26

标签: ios sorting comparison nsarray

在我的NSArray中,我有两种类型的对象,比方说A类和B类的对象。 我想通过将类A的“startingDate”属性与类B的“endingDate”属性进行比较来对这些对象进行排序。我不知道如何根据不同类的两个不同属性进行比较。

最好的方法是什么?

2 个答案:

答案 0 :(得分:2)

块是你想要的,看看这个问题: How to sort an NSMutableArray with custom objects in it?

在该问题的块示例中,只有A类使用startingDate,B类使用结束日期。

答案 1 :(得分:0)

我建议使用if / else块并使用语句

  

[myObject isKindOfClass:[ClassA class]]

返回BOOL

如果您愿意(或联合),Apple建议使用

  

[myObject respondsToSelector:@selector(startingDate)]

这也会返回BOOL。

在这种情况下,区块并不真正相关;您可以在普通方法实现,块,for / while循环或其他任何地方使用此设计模式。