Objective C - 辞書と配列の違いは何ですか? 辞書は key : value (Key は任意のオブジェクト) で使用され、配列は id : value (id は整数) で使用されますか?
ありがとう
Objective C - 辞書と配列の違いは何ですか? 辞書は key : value (Key は任意のオブジェクト) で使用され、配列は id : value (id は整数) で使用されますか?
ありがとう
配列
Objective-Cでは、配列はオブジェクトタイプを格納できるコレクションのタイプです。あらゆるタイプのオブジェクトを保存できます。配列に格納されているオブジェクトは、それらのインデックス番号にリンクされています。
例えば。配列を作成して最初のオブジェクトを挿入すると、それは「インデックス0」に格納され、インデックス番号は0,1,2....nから増加し続けます。
「NSMutableArray」を使用して、変更可能なアレイを作成します。
例、
NSMutableArray *array = [NSMutableArray alloc] init];
[array addObject:@"Tom"];
[array addObject:@"Cat"];
したがって、インデックス0には、「トム」があります。そして、インデックス1には、「猫」がいます。
辞書
Objective-Cでは、ディクショナリは「キーと値」のペアを格納するコレクションの一種です。「キー」はタイプIDであるため、値のキーとして任意のオブジェクトを入力できます。
「NSMutableDictionary」を使用して、変更可能な辞書を作成します。
例、
NSMutableDictionary *dictionary = [NSMutableDictionary alloc] init];
[dictionary setObject:@"Tom" forkey:@"name"];
[dictionary setObject:@"Cat" forKey:@"animal"];
配列とディクショナリの主な違いは、オブジェクトのシーケンスがディクショナリで変更されるのに対し、配列では格納されるオブジェクトのシーケンスがSEQUENTIALであるということです。
[編集]
この回答に関してはかなりの議論があったので、いくつかのコメントが言うように、配列が再作成されないことを明確にします。
配列/ディクショナリのサイズは、コレクション内の新しい要素に対応するために動的に増加します。