@interface PlayerVO : NSObject {
NSString *name;
int duration;
}
@property (nonatomic, retain) NSString *name;
@property (readwrite) int duration;
@end
要根据持续时间的值(升序)进行排序的自定义对象
在另一个班级中,我创建了一个函数,
- (NSComparisonResult)sort:(PlayerVO *)otherObject {
if ([self duration] < [otherObject duration]) {
return NSOrderedAscending;
} else if([self duration] > [otherObject duration]){
return NSOrderedDescending;
} else {
return NSOrderedSame;
}
}
调用功能
[data sortedArrayUsingSelector:@selector(sort:)];
我在这里做错了吗?
答案 0 :(得分:3)
使用sortedArrayUsingSelector:
时,您提供的选择器将被发送到阵列中的对象。因此,需要在要排序的对象的类上声明和定义-sort:
方法,而不是在另一个类上。