根据实体类的属性进行排序,这个属性排序还可以增加几个排序规则,前后的规则先判断,如果一样的则根据第二个排序规则来判断
NSSortDescriptor * sortDescriptor=[[NSSortDescriptor alloc] initWithKey: @“数据”提升:是的);//其中,价格为数组中的对象的属性,这个针对数组中存放对象比较更简洁方便 NSArray * sortDescriptors=[[NSArray alloc] initWithObjects:, sortDescriptor数:1]; (自我。dataArray sortUsingDescriptors sortDescriptors):;>之前过滤不会对原来的数据产生影响,而是生成符合过滤条件的NSArray数据
NSPredicate * apredicate=[NSPredicate predicateWithFormat: @”id>=% ld和id<=% ld”, 3、5]; NSArray * newArr=[自我。dataArray filteredArrayUsingPredicate: apredicate];下面是个例子可以运行看看
# import & lt;基?Foundation.h> @ interface TestBean: NSObject @ property(原子,分配)int id; @ property(原子、强)NSString *数据; @end# import & lt; UIKit/UIKit.h> @ interface ViewController: UIViewController@ property NSArray(强,原子) *列表; @end////ViewController.m//第一个////由shanreal-iOS 17/10/16。//版权软件是2017年shanreal.LongZhenHao。保留所有权利。//#进口“ViewController.h” #进口“TestBean.h” @ interface ViewController () @ property(原子、强)NSMutableArray * dataArray; @end @ implementation ViewController - (void) viewDidLoad { (超级viewDidLoad);//加载后任何额外设置视图。 _dataArray=[NSMutableArray数组); TestBean * 1=[[TestBean alloc] init); 一个。id=1; 一个。data=https://www.yisu.com/zixun/@“一”; [_dataArray addObject:一个); 一个=[[TestBean alloc] init); 一个。id=2; 一个。data=https://www.yisu.com/zixun/@“两个”; [_dataArray addObject:一个); 一个=[[TestBean alloc] init); 一个。id=22; 一个。data=https://www.yisu.com/zixun/@“two2”; [_dataArray addObject:一个); 一个=[[TestBean alloc] init); 一个。id=3; 一个。data=https://www.yisu.com/zixun/@“三”; [_dataArray addObject:一个); 一个=[[TestBean alloc] init); 一个。id=4; 一个。data=https://www.yisu.com/zixun/@“四”; [_dataArray addObject:一个); 一个=[[TestBean alloc] init); 一个。id=44; 一个。data=https://www.yisu.com/zixun/@“four4”; [_dataArray addObject:一个); 一个=[[TestBean alloc] init); 一个。id=5; 一个。data=https://www.yisu.com/zixun/@“5”; [_dataArray addObject:一个); 一个=[[TestBean alloc] init); 一个。id=6; 一个。data=https://www.yisu.com/zixun/@“6”; [_dataArray addObject:一个); (自我oneClick); (自我twoClick); } - (void) oneClick { NSSortDescriptor * sortDescriptor=[[NSSortDescriptor alloc] initWithKey: @“数据”提升:是的);//其中,价格为数组中的对象的属性,这个针对数组中存放对象比较更简洁方便 NSArray * sortDescriptors=[[NSArray alloc] initWithObjects:, sortDescriptor数:1]; (自我。dataArray sortUsingDescriptors sortDescriptors):; (自我logArray: self.dataArray); } - (void) twoClick { NSPredicate * apredicate=[NSPredicate predicateWithFormat: @”id>=% ld和id<=% ld”, 3、5]; NSArray * newArr=[自我。dataArray filteredArrayUsingPredicate apredicate):; (自我logArray: newArr); } - (void) logArray:数组(NSArray *) { NSLog (@”- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -”); (TestBean * bean的数组){ NSLog (@ % d % @”、bean.id bean.data); } } @end >之前 以上这篇iOS对NSMutableArray进行排序和过滤的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
iOS对NSMutableArray进行排序和过滤的实例