我想按升序对具有多个数字的整数数组进行排序。
这是我的数组:
keyArray:
(
978,
1077,
1067,
1076,
1072,
1082,
1079,
1075,
1071,
1081,
1078,
1080,
1074
)
这是我的代码:
NSSortDescriptor *sortOrder = [NSSortDescriptor sortDescriptorWithKey:@"self" ascending: YES];
NSArray *sortedArray2 = [keyArray sortedArrayUsingComparator:^(id str1, id str2) {
if ([str1 integerValue] < [str2 integerValue]) {
return (NSComparisonResult)NSOrderedDescending;
}
if ([str1 integerValue] > [str2 integerValue]) {
return (NSComparisonResult)NSOrderedAscending;
}
return (NSComparisonResult)NSOrderedSame;
}];
NSLog(@"%@",[keyArray sortedArrayUsingDescriptors: [NSArray arrayWithObject:sortOrder]]);
问题是这将像这样对数组进行排序
sortedArray: (
1067,
1071,
1072,
1074,
1075,
1076,
1077,
1078,
1079,
1080,
1081,
1082,
978
)
它将首先对四位数进行排序,然后对三位数进行排序。