0

値として配列を含む nsdictionary があるとしましょう。

NSMutableDictionary *test = [NSMutableDictionary dictionaryWithObjectsAndKeys:
[[NSMutableArray alloc]initWithObjects:"@Audi",@"Mercedes",@"Ferrari",nil], @"box 1",
[[NSMutableArray alloc]initWithObjects:"@Chervrolet",@"Mercedes",@"Bentley",nil], @"box 2",
[[NSMutableArray alloc]initWithObjects:"@Audi",@"Dodge",@"Ferrari",nil], @"box 2",
nil]

これは、内部に配列を含む単純な辞書です。さて、そこに値があるかどうかを確認する必要があります。

ここで、特定のキーがあるかどうかを確認する方法

if([test objectForKey@"box 2"]) { NSLog(@"item exists"); }

値の 1 つの中の配列にアクセスするにはどうすればよいですか? 配列にアイテムが含まれているかどうかを確認したり、アイテムを追加したりしますか?

ボックス 2 に Audi が含まれているかどうかを確認し、含まれていない場合は追加したいとします。

4

1 に答える 1

0

を使用containsObjectすると、オブジェクトが配列に存在するかどうかを確認できます。

       if([[test valueForKey:@"box 2"] containsObject:@"Audi"])
           NSLog(@"Audi exists");
       else
       {
           //[[test valueForKey:@"box 2"] addObject:@"Audi"];

           //EDIT
           NSMutableArray *data = [test valueForKey:@"box 2"];
           [data addObject:@"Audi"];
           [test setObject:data forKey:@"box 2"];

           NSLog(@"Add Audi");
       }
于 2013-07-24T09:53:26.323 に答える