根据对象对 NSMutableArray 进行排序

Sort NSMutableArray according to object

我得到 JSON 如下所示:

"Array1": 
[
  {
    "abc": "3_name",
    "id": 34,
    "order": [3]
  },
  {
    "abc": "1_name",
    "id": 50,
    "order": [1]
  },
  {
    "abc": "2_name",
    "id": 4,
    "order": [2]
  }
]

我不知道如何根据 "order" 对 Array1 进行排序,它本身就是一个数组。请帮忙。我不知道如何使用 NSSortDescriptor 或 Objective-C.

中可用的任何其他方法对其进行排序

您想使用比较器进行排序,它类似于:

id customCompare = ^(NSMutableDictionary * obj1, NSMutableDictionary * obj2) {
    return [obj1[@"order"][0] compare:obj2[@"order"][0]];
};

NSArray *sortedArray = [jsonData[@"Array1"] sortedArrayUsingComparator:customCompare];

其中 jsonData 应替换为包含 Array1 的字典的正确名称。