NSArray *allkeys = [[NSArray alloc] initWithObjects:@"bca",@"abc",@"dca",@"cab",@"adc",@"acc",@"add",@"aaa",@"aab", nil];
NSArray *sorteArray = [allkeys sortedArrayUsingComparator:^(id obj1, id obj2){
if([obj1 compare:obj2] == NSOrderedDescending) {
return (NSComparisonResult)NSOrderedDescending;
}
if([obj1 compare:obj2] == NSOrderedAscending) {
return (NSComparisonResult)NSOrderedAscending;
}
return (NSComparisonResult)NSOrderedSame;
}];
for(NSString *str in sorteArray){
NSLog(@"%@",str);
}
[allkeys release];
NSMutableArray *array = [[NSMutableArray alloc] init];
[array addObject:[NSNumber numberWithInt:1]];
[array addObject:[NSNumber numberWithInt:3]];
[array addObject:[NSNumber numberWithInt:2]];
NSArray *sorteArray = [array sortedArrayUsingComparator:^(id obj1, id obj2){
if ([obj1 integerValue] > [obj2 integerValue]) {
return (NSComparisonResult)NSOrderedDescending;
}
if ([obj1 integerValue] < [obj2 integerValue]) {
return (NSComparisonResult)NSOrderedAscending;
}
return (NSComparisonResult)NSOrderedSame;
}];
NSLog(@"%@",sorteArray); //从小到大
NSArray *array2 = [array sortedArrayUsingComparator:^(id obj1, id obj2){
if ([obj1 integerValue] > [obj2 integerValue]) {
return (NSComparisonResult)NSOrderedAscending;
}
if ([obj1 integerValue] < [obj2 integerValue]) {
return (NSComparisonResult)NSOrderedDescending;
}
return (NSComparisonResult)NSOrderedSame;
}];
NSLog(@"%@",array2);
// ascending: YES 为升序 NO 为降序
NSSortDescriptor *sd1 = [NSSortDescriptor sortDescriptorWithKey:@"self" ascending:YES];
NSArray *arr1 = [array sortedArrayUsingDescriptors:[NSArray arrayWithObjects:sd1, nil]];
NSLog(@"%@",arr1);
分享到:
相关推荐
NSArray排序demo
//取第一页,每页10条按条件查询数据,指定字段,设置分页,设置排序,返回结果为NSArray 排序中 desc 代表 降序,asc代表升序 单个字段排序 如 id desc 多个字段排序 如 id,wheel ascNSString *where = @"name='...
NSArray *arr = [[NSArray alloc] initWithObjects:如果要初始化1000项,可以这样:当然换成swift就超级简单了
官方文档,数组类的最权威文档。各种数组方法的详细说明。英文的。
使用数据结构的排序算法,对NSArray进行排序,包括快速、选择、插入、希尔等四种排序算法
Object C 字符串和数组NSString NSArray操作
NSString NSArray NSDictionary 方法名释义
比较完美的解决了数组越界的问题, 在debug模式下会崩溃 , 在release不会崩溃 , 开发过程中 , 方便调试 , 正式环境中 减少崩溃.
Swift-NSArray数组的使用
Iphone数组一些基础操作 NSArray/NSMutableArrayIphone
OC-NSArray数组的使用Demol
1. 数组的常用处理方式 //--------------------不可变数组 //1....NSString *s1 = @zhangsan; NSString *s2 = @lisi; NSString *s3 = @wangwu;...NSArray *array1 = [[NSArray ...NSArray *array2 = [NSArray arrayWithOb
NSPredicate应用,包括以下几个部分: 1、字符串,正则表达式的匹配; 2、字符串数组NSArray和NSMutableArray的快捷过滤方式; 3、自定义对象数组NSArray和NSMutableArray的快捷过滤方式;
主要介绍了IOS 开发之 NSMutableArray与NSArray 的区别的相关资料,希望通过本文能掌握这部分内容,需要的朋友可以参考下
NSArray,NSSet,NSEnumerator,NSDictionary及对应Mutable介绍,有对应的实例代码
Objective-C的数组比C++,Java的数组强大在于,NSArray保存的对象可以是不同的对象。但只能保存对象,int ,char,double等基本数据类型不能直接保存,需要通过转换成对象才能加入数组。
一些NSArray,NSDictionary,NSSet相关的算法知识1
详细的说明和用法 NSArray,NSSet,NSDictionary 以及他们子类的说明
NSArray-Shuffle 用于混洗数组的 NSArray 类别。方法bjl_shuffledArray - ( NSArray *)bjl_shuffledArray 返回值返回一个数组,其中所有元素都被随机排列。 bjl_shuffledArrayWithItemLimit: - ( NSArray *)bjl_...
object-c 适合初学者,主要学习数组,包括固定数组和可变数组,以及创建简单类文件和使用方法