macOS/iOS API解説

iOS , Mac アプリケーション開発のために使われる主要フレームワークの日本語情報です。2010年代に書かれた内容です。今後更新はありません。

目次

sortUsingSelector:

配列の要素を比較メソッドで比較してソートします
-(void)sortUsingSelector:(SEL)comparator

解説

配列の要素を比較メソッドで比較してソートします。
比較メソッドは2つのエレメントを比較するために使います。
レシーバが引数より小さい時は NSOrderedAscending を返し、大きい時は NSOrderedDescending を返します。2つのエレメントが同じ場合は NSOrderedSame を返すようにします。

返り値

( void )

なし

引数

( SEL )comparator

比較メソッド

クラス

NSMutableArray

Instance Methods

使用可能

10.0
iOS2.0

参照

例文

#pragma mark sortUsingSelector:
-(void)method003
{
    
    NSMutableArray *anArray = [[NSMutableArray alloc] initWithCapacity:0];
    [anArray addObject:@"aaa"];
    [anArray addObject:@"cccc"];
    [anArray addObject:@"bbb"];
    [anArray addObject:@"a"];
    
    //普通に
    [anArray sortUsingSelector:@selector(compare:)];
    NSLog(@"%s compare: %@",__FUNCTION__,[anArray description]);
    //=>[OOOAppDelegate method003] compare: (a,aaa,bbb,cccc)
    
    //NSString+Extractとしてカテゴリを作っている。comparePlus:というメソッドを作成済み。
    //これは単に文字の長さが長いかを比べるメソッド
    [anArray sortUsingSelector:@selector(compareLength:)];
    
    NSLog(@"%s compare: %@",__FUNCTION__,[anArray description]);
    //=>[OOOAppDelegate method003] compare: (cccc,aaa,bbb,a)
}