Sac*_*jay 1 cocoa-touch objective-c ios
在这里,我使用int属性newsID 对包含NewsData对象的NSMutableArray newsDataArray进行排序.现在正在运作.但是我怎么能以更好的方式做到这一点.有没有更好的方法......
NSSortDescriptor *sortDesc = [[NSSortDescriptor alloc] initWithKey:@"newsID" ascending:NO];
NSArray *tempArray = [newsDataArray sortedArrayUsingDescriptors:[NSArray arrayWithObject:sortDesc]];
NSMutableArray *sortedArray = [NSMutableArray arrayWithArray:tempArray];
NSLog(@"sortedArray=%@" ,sortedArray);
Run Code Online (Sandbox Code Playgroud)
当我使用以下方法与块时出现一些错误.我希望将newsDataArray排序为我的最终结果....任何人都给我一个明确的例子......
有几种方法,这里使用比较器
对于NSArray - > new Array对象:
array = [array sortedArrayUsingComparator: ^(id a, id b) {
return [a.newsTitle compare:b.newsTitle]
}
Run Code Online (Sandbox Code Playgroud)
对于NSMutableArray - >到位:
[array sortUsingComparator: ^(id a, id b) {
return [a.newsTitle compare:b.newsTitle]
}];
Run Code Online (Sandbox Code Playgroud)
按标量排序:
[array sortUsingComparator: ^(id a, id b) {
if ( a.newsID < b.newsID) {
return (NSComparisonResult)NSOrderedAscending;
} else if ( a.newsID > b.newsID) {
return (NSComparisonResult)NSOrderedDescending;
}
return (NSComparisonResult)NSOrderedSame;
}];
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5954 次 |
| 最近记录: |