3

そのため、使用するメソッドデータをフィードするNSDictionaryを作成していますが、keys配列の一部のキー値が常に値で満たされるとは限りません。18個のキーがあるとします(これは私が行います)。 1つの呼び出しでは5を使用しますが、他の呼び出しでは6を使用するか、コードのある時点で18すべてを使用します。

私が知りたいのは、これらのキーにNULL値を追加する方法です。後でキーと値のペアを調べると、心配する必要のあるキーと忘れることができるキーを確認できます。したがって、問題は、キーに何も/ nullを追加したくない場合、エラーを発生させたり、配列の終わりを考えたりせずに、どうすればそれを実行できるかということです。

これは私が現在持っているものですが、NSDicionaryを読み込もうとするとすぐに悪いexeエラーが発生します

NSDictionary * sendSeriesDictionary = [[NSDictionary alloc] init];

NSArray *keys = [NSArray arrayWithObjects:@"Code", @"MaID", @"MoID", @"SuID",@"SMID",@"Ye",@"KID",@"KBlID",@"KBk",@"CaID",@"Caer",@"Loe",@"Kepe",@"KTGroup",@"Cesc",@"LID",@"IN",@"LaID", nil];


NSArray *objects = [NSArray arrayWithObjects: NULL, manufactureIdString, modelIdString, subModelIdString, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, nil];

sendSeriesDictionary = [NSDictionary dictionaryWithObjects:objects forKeys:keys];

キー名が変更されることをお知らせするためだけに、これはテスト/例としてこれを行う方法を示しています。

どんな助けでも大歓迎です。

4

2 に答える 2

11

NSNullクラスはこのために設計されています。コレクションを使用するものはすべてNSNull値をチェックすることを確認する必要があります。

NSArray *objects = [NSArray arrayWithObjects: [NSNull null], manufactureIdString, modelIdString, subModelIdString, [NSNull null], ..., nil];
于 2012-07-24T01:34:16.160 に答える
2

NSNullはあなたが探しているものです。

于 2012-07-24T01:34:17.600 に答える