如何按NSString长度对NSMutableArray进行排序?

问题描述 投票:14回答:2

我有一个NSMutableArray包含各种长度的NSStrings。我如何按字符串长度排序数组?

iphone objective-c cocoa ios sorting
2个回答
29
投票

看看我对sorting arrays with custom objects的回答:

NSSortDescriptor *sortDesc= [[NSSortDescriptor alloc] initWithKey:@"length" ascending:YES];

[myArray sortUsingDescriptors:@(sortDesc)];

4
投票

这就是我做的事情(爱我一些块!)

_objects = [matchingWords sortedArrayUsingComparator:^NSComparisonResult(id a, id b) {
        NSNumber *alength = [NSNumber numberWithInt:((NSString*)a).length];
        NSNumber *blength = [NSNumber numberWithInt:((NSString*)b).length];
        return [alength compare:blength];
    }];
© www.soinside.com 2019 - 2024. All rights reserved.