数值
NSMutableArray* arr = [NSMutableArrayarrayWithObjects:
[NSNumber numberWithInt:0],
[NSNumber numberWithInt:3],
[NSNumber numberWithInt:2],
[NSNumber numberWithInt:1],
[NSNumber numberWithInt:7],
[NSNumber numberWithInt:8],
[NSNumber numberWithInt:9],
[NSNumber numberWithInt:10],
[NSNumber numberWithInt:6],
[NSNumber numberWithInt:5],
[NSNumber numberWithInt:4],
nil];
// 升序
// 0 --> 10
[arr sortUsingComparator:^NSComparisonResult(__strongid obj1,__strong id obj2){
return [obj1 intValue] > [obj2intValue];
}];
NSLog(@"%@", [arrdebugDescription]);
// 降序
// 10 --> 0
[arr sortUsingComparator:^NSComparisonResult(__strongid obj1,__strong id obj2){
return [obj1 intValue] < [obj2intValue];
}];
NSLog(@"%@", [arrdebugDescription]);
字符串
NSMutableArray* arr = [NSMutableArray arrayWithObjects:@"C", @"A", @"H", @"I", @"B", @"D", @"J", @"E", @"F", @"G", @"K", nil];
// 升序
// A --> K
[arr sortUsingComparator:^NSComparisonResult(__strong id obj1,__strong id obj2){
NSString *str1=(NSString *)obj1;
NSString *str2=(NSString *)obj2;
return [str1 compare:str2];
}];
NSLog(@"%@", [arr debugDescription]);
// 降序
// K --> A
[arr sortUsingComparator:^NSComparisonResult(__strong id obj1,__strong id obj2){
NSString *str1=(NSString *)obj1;
NSString *str2=(NSString *)obj2;
return [str2 compare:str1];
}];
NSLog(@"%@", [arr debugDescription]);
本文通过示例展示了如何使用 Objective-C 对 NSMutableArray 中的数值和字符串进行升序及降序排序。首先创建了一个包含整数的数组,并分别实现了升序和降序排序。接着,对一个包含字母的字符串数组进行了同样的操作。
171

被折叠的 条评论
为什么被折叠?



