2010-03-31 4 views
3

NSArrayNSNumbers 인 숫자 순서로 정렬하고 있지만 가장 좋은 방법은 확실하지 않습니다. 001과 002는 내 생각에 비견 될만큼 잘 맞을 것입니다. 003의 경우 을 반환 할 때 확실한 방법이 없을 경우 NSArray이 좋은 방법 일 것으로 예상되지만 작동하지만 어색함을 느낍니다.NSArray 정렬 및 NSArray 반환?

-(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);  
} 

답변

12

호출 할 수 있다고 생각합니다. 당신은 다만 할 수 있습니다

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

제이슨 감사합니다, 정말 그 중 하나를 놓친, 많이 감사하겠습니다. – fuzzygoat

5

나는 방금 당신은 전혀 변경 가능한 배열을 필요가 없습니다

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

고맙습니다. – fuzzygoat

0

있는 NSArray * sortedArray = [arrayNumbers sortedArrayUsingSelector : @selector (:)이 비교]