/ / NSSetオブジェクトでNSDictonaryを設定する - objective-c、nsdictionary、nsset

NSSetオブジェクトを使ってNSDictonaryを設定する - objective-c、nsdictionary、nsset

あるコマンドでNSSetオブジェクトを使ってNSSDictionaryをセットアップする方法はありますか?あるいは、すべてのセットのオブジェクトを最初に作成する必要がありますか?

たとえば、これは可能なのでしょうか?

NSDictionary *dictionary=[NSDictionary dictionaryWithObjectsAndKeys:{@"orange",@"lemon"},@"citrus",{@"horse",@"moose",@"goose"},@"animals",nil];

読んでくれてありがとう。

回答:

回答№1の場合は3

NSSetリテラルはありません。しかし、NSArrayリテラルを使用してNSSetを初期化することができます。これは取得できる最短時間です。

NSDictionary *dictionary = @{
@"citrus":  [NSSet setWithArray:@[@"orange", @"lemon"]],
@"animals": [NSSet setWithArray:@[@"horse", @"moose", @"goose"]]};

回答№2の場合は1

ない NSSet Objective-Cのみのリテラル NSArray リテラル。

NSDictionary *dictionary = @{ @"citrus" : @[ @"orange", @"lemon" ], @"animals" : @[ @"horse", @"moose" ,@"goose" ] };

だから、上記はあなたに NSDictionaryNSArray 含有 orange そして lemon キーのために citrusNSArray 含有 horse, moose、および goose キーのために animals.

あなたはそれらにアクセスすることができます NSArrays そのようです dictionary[@"animals"] and dictionary[@"citrus"]

それらのリテラルアクセサも入れ子にすることができます dictionary[@"animals"][0] あなたに与えるだろう horse.

配列メソッドを使用することもできます

[dictionary[@"citrus"] count] あなたに与えるだろう 2