1、数据倒序排列
// 倒序
NSArray *originalArray = @[@7, @6, @5, @4, @3, @2, @1];
NSArray *resultArray = [[originalArray reverseObjectEnumerator] allObjects];
NSLog(@"%@",resultArray);
reverseObjectEnumerator方法是获取一个逆序的NSEnumerator对象,allObjects方法是将逆序的NSEnumerator对象转换成数组。通过这两个系统方法的组合,就可以快速实现数组倒序排列。
2、使用for循环实现数组倒序排列
// 倒序
NSMutableArray *originalArray = [NSMutableArray arrayWithArray:@[@7, @6, @5, @4, @3, @2, @1]];
NSMutableArray *resultArray = [NSMutableArray arrayWithCapacity:0];
for (NSInteger i=originalArray.count-1; i>=0; i--) {
[resultArray addObject:originalArray[i]];
}
NSLog(@"%@",resultArray);
3、使用block实现数组升序排列
// 升序
NSArray *originalArray = @[@7, @6, @5, @4, @3, @2, @1];
NSArray *resultArray = [originalArray sortedArrayUsingComparator:^NSComparisonResult(id _Nonnull obj1, id _Nonnull obj2) {
return [obj2 compare:obj1];
}];
NSLog(@"%@",resultArray);
sortedArrayUsingComparator方法是将数组按指定方式排序,需要传入一个block,用于比较两个元素的大小关系。使用了compare方法进行元素比较,通过返回值来确定元素的排列顺序,从而实现数组倒序排列。