排序字典键值字典



如何使用 firt_name key。

对数组进行排序

我使用了此代码,但没有帮助。

NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"user.first_name"ascending:YES selector:@selector(localizedCaseInsensitiveCompare:)];
NSArray *sortDescriptors = [NSArray arrayWithObjects:sortDescriptor, nil];
NSArray *sortedArray = [array sortedArrayUsingDescriptors:sortDescriptors];
{
                "created_at" = "";
                "updated_at" = "";
                user =             {
                    "first_name" = Gary;
                    "full_contact" = "null 5555555555";
                    "full_name" = "Gary123";
                };
     },

通过使用nssortDescriptor,您可以做到。

nssortDescriptor对象描述了通过 指定用于比较对象的属性,方法 用于比较属性,以及比较是否应为 上升或下降。NSSortDeScriptor的实例是不可变的。

 +(NSMutableArray *)SortArray : (NSMutableArray *)arrOriginal{
        NSSortDescriptor *sortDescriptor;
        sortDescriptor = [NSSortDescriptor sortDescriptorWithKey:@"Firt_name" ascending:YES
            comparator:^(id obj1, id obj2) {
            return [obj1 compare:obj2 options:NSNumericSearch];
            }];
        NSArray *sortDescriptors = [NSArray arrayWithObject:sortDescriptor];
        NSArray *sortedArray;
        sortedArray = [arrOriginal
                       sortedArrayUsingDescriptors:sortDescriptors];
        [arrOriginal removeAllObjects];
        [arrOriginal addObjectsFromArray:sortedArray];
        return arrOriginal;
    }

希望它会有所帮助。

您可以尝试以下代码行并检查:

NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"user.first_name" ascending:YES];
NSArray *sortDescriptors = [NSArray arrayWithObjects:sortDescriptor, nil];
NSArray *sortedArray=[array sortedArrayUsingDescriptors:sortDescriptors,nil]];

您可以在下面的链接中阅读有关NSSortDescriptor的更多信息:

https://develveper.com/library/content/documentation/cocoa/conepteual/sortdescriptors/articles/creating.htmll#/apple_reff/doc/doc/uid/20001845-bajeaiee

最新更新