OC-排序-简单对象的排序-OC排序
/*************** 简单对象的排序 *****************/
// 排序 可变数组
NSMutableArray *arr = [NSMutableArray arrayWithObjects:@"8", @"2", @"3", @"5", nil];
// **冒泡排序**
for (NSInteger i = 0; i < arr.count - 1; i++) {
for (NSInteger j = 0; j < arr.count - i - 1; j++) {
// 比较交换
// 注意字符串比较方法的返回值
if (NSOrderedDescending == [arr[j] compare:arr[j + 1]]) {
// 数组的交换方法
[arr exchangeObjectAtIndex:j withObjectAtIndex:j + 1];
}
}
}
NSLog(@"%@", arr);
// OC排序方法
// @selector - 方法选择器, 填写要用来比较的方法 compare(比较)
[arr sortedArrayUsingSelector:@selector(compare:)];
NSLog(@"%@", arr);
// 不可变数组排序- 与可变数组类似
// 一般都在排序方法命名加Array
// 如:可变方法:sortUsingSelector
// 不可变方法:sortedArrayUsingSelector
NSArray *arr1 = [NSArray arrayWithObjects:@"2", @"1", @"6", @"4", nil];
NSArray *sortArr =[arr1 sortedArrayUsingSelector:@selector(compare:)];
NSLog(@"%@", sortArr);