参考:http://blog.csdn.net/u010828718/article/details/51202624
1.sortedArrayUsingComparator这个方法本身就是按递增的方式排序。
2.返回的返回值(NSOrderedAscending 不交换,NSOrderedSame 不交换,NSOrderedDescending 交换)。
例如:object1 < object2 返回:NSOrderedDescending 则交换(变为object2,object1),以保证安方法本身升序。返回NSOrderedAscending,两者不交换。
NSArray *tMlist = @[@4,@5,@2,@6,@3,@7,@8];
NSArray *tMlist2 = @[@"h4",@"h5",@"h2",@"h6",@"h3",@"h7",@"h8"];
//升序1
NSArray *tArray1_1 = [tMlist sortedArrayUsingComparator:^NSComparisonResult(id _Nonnull obj1, id _Nonnull obj2) {
NSNumber *tNumber1 = (NSNumber *)obj1;
NSNumber *tNumber2 = (NSNumber *)obj2;
if ([tNumber1 integerValue] < [tNumber2 integerValue]) {
return NSOrderedDescending;
}
if ([tNumber1 integerValue] > [tNumber2 integerValue]) {
return NSOrderedAscending;
}
return NSOrderedDescending;
}];
//升序2
NSArray *tArray1_2 = [tMlist2 sortedArrayUsingComparator:^NSComparisonResult(id _Nonnull obj1, id _Nonnull obj2) {
return [obj1 compare:obj2 options:NSNumericSearch];
}];
//降序
NSArray *tArray2 = [tMlist sortedArrayUsingComparator:^NSComparisonResult(id _Nonnull obj1, id _Nonnull obj2) {
NSNumber *tNumber1 = (NSNumber *)obj1;
NSNumber *tNumber2 = (NSNumber *)obj2;
if ([tNumber1 integerValue] < [tNumber2 integerValue]) {
return NSOrderedAscending;
}
if ([tNumber1 integerValue] > [tNumber2 integerValue]) {
return NSOrderedDescending;
}
return NSOrderedDescending;
}];
//倒序
NSArray *tArray3 = [tMlist sortedArrayUsingComparator:^NSComparisonResult(id _Nonnull obj1, id _Nonnull obj2) {
return NSOrderedDescending;
}];