#pragma mark - 学历课表- (void)getTeachingScheduleWithParameters:(NSDictionary *)dict resultBlock:(void (^)(NSArray* scheduleArray, NSError *error))resultBlock { [self.sharedClient GET:kTeachingScheduleURL parameters:dict success:^(AFHTTPRequestOperation * _Nonnull operation, id _Nonnull responseObject) { NSLog(@"succeeded"); NSLog(@"%@", responseObject); NSString *isSuccess = [responseObject objectForKey:@"IsSuccess"]; if (isSuccess.intValue == 1) { // 获取数据成功 NSLog(@"%@", [responseObject objectForKey:@"Result"]); // 将服务器发送的JSON转换成CourseGrade的数组 NSArray *origianlArray = [TATeachingSchedule mj_objectArrayWithKeyValuesArray:[responseObject objectForKey:@"Result"]]; NSMutableArray *arr1 = [NSMutableArray arrayWithCapacity:5]; NSMutableArray *arr2 = [NSMutableArray arrayWithCapacity:5]; NSMutableArray *arr3 = [NSMutableArray arrayWithCapacity:5]; NSMutableArray *arr4 = [NSMutableArray arrayWithCapacity:5]; NSMutableArray *arr5 = [NSMutableArray arrayWithCapacity:5]; NSMutableArray *arr6 = [NSMutableArray arrayWithCapacity:5]; NSMutableArray *arr7 = [NSMutableArray arrayWithCapacity:5]; for (TATeachingSchedule *schedule in origianlArray) { if (schedule.weekDay == 1) { [arr1 addObject:schedule]; } else if (schedule.weekDay == 2) { [arr2 addObject:schedule]; } else if (schedule.weekDay == 3) { [arr3 addObject:schedule]; } else if (schedule.weekDay == 4) { [arr4 addObject:schedule]; } else if (schedule.weekDay == 5) { [arr5 addObject:schedule]; } else if (schedule.weekDay == 6) { [arr6 addObject:schedule]; } else if (schedule.weekDay == 7) { [arr7 addObject:schedule]; } } NSArray *sortedArr1 = [arr1 sortedArrayUsingSelector:@selector(compareWithSection:)];//把周一 数组里面的model进行排序(按括号方法进行排序),得到 有序的model数组sortedArr1 (section是第几节课) NSArray *sortedArr2 = [arr2 sortedArrayUsingSelector:@selector(compareWithSection:)]; NSArray *sortedArr3 = [arr3 sortedArrayUsingSelector:@selector(compareWithSection:)]; NSArray *sortedArr4 = [arr4 sortedArrayUsingSelector:@selector(compareWithSection:)]; NSArray *sortedArr5 = [arr5 sortedArrayUsingSelector:@selector(compareWithSection:)]; NSArray *sortedArr6 = [arr6 sortedArrayUsingSelector:@selector(compareWithSection:)]; NSArray *sortedArr7 = [arr7 sortedArrayUsingSelector:@selector(compareWithSection:)]; NSArray *scheduleArray = @[sortedArr1, sortedArr2, sortedArr3, sortedArr4, sortedArr5, sortedArr6, sortedArr7]; if (resultBlock) { resultBlock(scheduleArray, nil); } NSLog(@"%@", scheduleArray); } else { // 获取数据失败, 打印错误信息 NSString *errorMessage = [responseObject objectForKey:@"Message"]; NSError *err = [NSError errorWithDomain:@"error" code:200 userInfo:[NSDictionary dictionaryWithObject:errorMessage forKey:@"error"]]; if (resultBlock) { resultBlock(nil, err); } NSLog(@"%@", errorMessage); } } failure:^(AFHTTPRequestOperation * _Nullable operation, NSError * _Nonnull error) { // 请求失败 NSLog(@"failed"); if (resultBlock) { resultBlock(nil, error); } }];}//按如下方法进行排序;这是 -1 ,0, 1 是由小到大 -(NSComparisonResult)compareWithSection:(TATeachingSchedule *)schedule{ if( self.section < schedule.section ) return -1; else if( self.section == schedule.section ) return 0; else return 1;}
关于数组排序的问题
最新推荐文章于 2022-11-15 21:01:18 发布