Objective-C に関する本を読んでいます。アドレス帳の配列の並べ替えを扱う部分。並べ替え方法は次のとおりです。
- (void) sort
{
[book sortUsingSelector: @selector(compareNames:);
}
「compareNames」メソッドは次のようになります。
//Compare the two names from the specified address cards
-(NSComparisonResult) compareNames: (id) element
{
return [name compare: [element name]];
}
私はそれがどのように機能するかを見ることができます。すべての「名前」がアルファベット順に入れ替わるまで、配列の各要素を次の要素と比較します。
(以前に言及されていないため)得られないのは、「(id)要素」引数がどこから来るのですか?私が取得した「名前」は、以前に初期化された原因です。しかし、「要素」はどこから来たのでしょうか? それは NSArray に付属する固定オブジェクトですか? 前に、たとえば NSLogging nummer[1] によって要素を出力する方法について説明しました。このアドレス帳の場合、そのブック内の 1 つの要素またはカードを NSLogging book[32] で印刷できます。しかし、「要素」はそれにどのように適合しますか?