如何排序这个案子?

时间:2012-12-21 03:20:02

标签: ios sorting nsmutablearray nsmutabledictionary

如何对这种情况进行排序?

  1. 我有NSMutableArray
  2. 我的NSMutableArray可以有一个对象或NSMutableDictionary
  3. 我的NSMutableDictionary只有一个对象(一个对象作为对象,一个字符串作为其键)
  4. 两个对象都相同且具有属性name
  5. 现在,我正在努力的是我想根据字典键和对象NSMutableArrayname进行排序? (让我们忽略添加到NSMutableArray

    的对象

    对一个人的感谢可以让我知道如何解决这个案子!

1 个答案:

答案 0 :(得分:0)

将您的NSMutableArray添加到NSObject的自定义子类中,并使用自定义NSComparator进行排序,如下所示:

(NSComparator)^(id obj1, id obj2){ /* obj1 and obj2 are NSMutableArrays */
      if ([obj1 objectAtIndex:1] isKindOfClass:[NSMutableDictionary class]) {
           // sort according to the dictionary case
      } else { // [obj1 objectAtIndex:1] isKindOfClass:[NSObject class]
           // sort according to the your other, default case
      }
}

请注意,这是未经测试的,您需要填写if和else语句的正文。 else子句的注释就是我编码的方式,如果它不符合你的口味你就可以消除它。