代码之家  ›  专栏  ›  技术社区  ›  theprojectabot

如何按类对一系列对象进行排序?

  •  0
  • theprojectabot  · 技术社区  · 15 年前

    我有一个对象数组,所有这些对象都用它们不同的类型从一个更抽象的类中派生出来。

    我想按对象的类类型对数组排序。例如:

    myArray={C,B,A}

    排序myArray降级:{A,B,C}

    我看到排序描述符,这似乎是正确的路径,但我比较的是类的种类,它不是一个属性,所以不能用于nssortdescriptors的事情。

    谢谢你的帮助。

    1 回复  |  直到 15 年前
        1
  •  0
  •   Dave DeLong    15 年前

    嗯,我看到的最大的障碍是,你可能需要一个定制的财产 Class NSSortDescriptor . 不幸的是,没有真正的方法将方法/类别添加到 等级 物体。

    所以我可能会用 NSStringFromClass() 等级 对象转换为字符串,然后使用 NSString category添加一个定制的comparator方法(类似 compareToClass: )将字符串转换回 等级

    NSArray sortedArrayUsingSelector: 方法将它们排列整齐。