繁体   English   中英

排序NSArray并返回NSArray?

[英]Sorting NSArray and returning NSArray?

我只是想将NSArrayNSNumbers排序为数字顺序,但我不确定最好的方法。 根据我的想法001和002是相当可比的,所以我怀疑要么会这样做。 对于003我不确定当方法期望NSArray是一个好习惯时返回NSMutableArray ,它可以工作,但感觉很尴尬。

-(NSArray *)testMethod:(NSArray *)arrayNumbers {    
    // 001
    NSMutableArray *sortedArray = [NSMutableArray arrayWithArray:arrayNumbers];
    [sortedArray sortUsingSelector:@selector(compare:)];
    arrayNumbers = [NSArray arrayWithArray:sortedArray];
    return(arrayNumbers);   
}

-(NSArray *)testMethod:(NSArray *)arrayNumbers {    
    // 002
    NSMutableArray *sortedArray = [NSMutableArray arrayWithArray:arrayNumbers];
    [sortedArray sortUsingSelector:@selector(compare:)];
    arrayNumbers = [[sortedArray copy] autorelease];
    return(arrayNumbers);   
}

-(NSArray *)testMethod:(NSArray *)arrayNumbers {    
    // 003
    NSMutableArray *sortedArray = [NSMutableArray arrayWithArray:arrayNumbers];
    [sortedArray sortUsingSelector:@selector(compare:)];
    return(sortedArray);    
}

你根本不需要一个可变数组。 你可以这样做:

NSArray* sortedArray = [arrayNumbers sortedArrayUsingSelector:@selector(compare:)];

我想你可以打电话

return [arrayNumbers sortedArrayUsingSelector:@selector(compare:)];

NSArray * sortedArray = [arrayNumbers sortedArrayUsingSelector:@selector(compare :)];

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM