iOS如何对包含NSNumber的NSarray的自定义对象的NSMutableArray进行排序?

问题描述:

我有一个数组(NSMutableArray)其中包含StudentScoreObj和对象有missions(NSArray)iOS如何对包含NSNumber的NSarray的自定义对象的NSMutableArray进行排序?

喜欢:

missions = @[@34, @43, @54, @23, @54]; 

需要使用任务阵列的第一对象进行排序阵列的StudentScoreObj。

我的代码:

@interface StudentScoreObj : NSObject 

@property (nonatomic, copy) NSString *teamType; 
@property (nonatomic, copy) NSString *teamNumber; 
@property (nonatomic, copy) NSString *studentName; 
@property (nonatomic, copy) NSString *isParticipated ; 
@property (nonatomic, copy) NSString *totalScore; 
@property (nonatomic, copy) NSString *avgScore; 
@property (nonatomic, copy) NSArray *missions; 

@end 
+0

你是怎么试过的? – Paulw11

您可以使用sorted​Array​Using​Comparator了点。

NSArray *sortArray = [array sortedArrayUsingComparator:^NSComparisonResult(StudentScoreObj *obj1,StudentScoreObj *obj2) { 

    NSNumber *obj1Score = @0, *obj2Score = @0;   
    if([[obj1 missions] firstObject]) { 
     obj1Score = @([[[obj1 missions] firstObject] intValue]); 
    } 

    if([[obj2 missions] firstObject]) { 
     obj2Score = @([[[obj2 missions] firstObject] intValue]); 
    } 
    return [obj1Score compare:obj2Score]; 
}]; 
+0

它的作品。谢谢! – PillowPig

+0

@PillowPig欢迎伴侣:) –