数组升序和降序的方法是
升序
NSMutableArray*temp= [NSMutableArray arrayWithObjects:@"4",@"2",@"3",@"1",@"5",@"6",nil];
NSArray*result= [temp sortedArrayUsingComparator:^NSComparisonResult(id _Nonnullobj1,id _Nonnullobj2) {
return[obj1 compare:obj2];
}];
降序
NSMutableArray *temp = [NSMutableArray arrayWithObjects:@"4",@"2",@"3",@"1",@"5",@"6",nil];
NSArray *result = [temp sortedArrayUsingComparator:^NSComparisonResult(id _Nonnull obj1, id _Nonnull obj2) {
return[obj2 compare:obj1];
}];
但是如果数组中存放的是Model呢,根据Model的某一个字段应该怎么排序???
obj1 和 obj2 前面是有类型的id 如果我们把id改为Model,是否可以呢?试一下.
self.dataArray = [array sortedArrayUsingComparator:^NSComparisonResult(HMDayLiveModel* _Nonnull obj1, HMDayLiveModel* _Nonnull obj2) {
return[obj2.ratiocompare:obj1.ratio];
}];
打断点,看了一下,成功了.
那数组中存放其他类型,也修改为对应的类型就可以了.