繁体   English   中英

多个字典的排序数组

[英]Sorting array of multiple dictionaries

我的数组每个对象包含三个字典。

{
    avg = {
        avg1 = 50;
        avg2 = 60;
    };

    posts =         {
        alcoholContent = 450;
        name = "BBB";
        origin = United States;

    };

    reviews =  {

        rev1 = "Test review 1";
        rev2 = "Test review 2";
    };
}

{
    avg = {
        avg1 = 30;
        avg2 = 20;
    };

    posts =         {
        alcoholContent = 550;
        name = "AAA";
        origin = United States;

    };

    reviews =  {

        rev1 = "Test review 1";
        rev2 = "Test review 2";
    };
}

我想按(后词典的)键“名称”对数组进行排序。 我该怎么做?

我使用排序描述符尝试了普通的排序方法,但是没有用

尝试sortUsingComparator:

[array sortUsingComparator:^NSComparisonResult(id obj1, id obj2) {
    NSDictionary *dict1 = obj1;
    NSDictionary *dict2 = obj2;

    NSString *string1 = [[dict1 objectForKey:@"posts"] objectForKey:@"name"];
    NSString *string2 = [[dict2 objectForKey:@"posts"] objectForKey:@"name"];

    return [string1 compare:string2];
}];

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM