&tag(NSDictionary); *目次 [#pae9bb45] #contents *参考情報 [#kc361af1] *Tips [#g4e24355] **valueForKeyではなくobjectForKeyを使う [#ic4f59f7] -[[NSDictionary の objectForKey: と valueForKey: の違い - 24/7 twenty-four seven:http://d.hatena.ne.jp/KishikawaKatsumi/20100319/1268946432]]にあるように、valueForKeyは@の時の挙動がかわってくるので、普通の辞書として使いたい場合はobjectForKeyを使うほうがよい。 **nilの扱い [#b7f95f22] -valueにnilは保存できないのでかわりに[NSNull null]を入れるしかない。ちなみにNSArrayにもnilが保存できない。 **キーが存在するかどうかのチェック [#r30ecaf7] -allKeysで全てのキーを取得してチェックする。 #pre{{ if ([[dictionary allKeys] containsObject:key) { //キーが存在 } }} -もしくはキーに対するvalueを取得。キーが存在しない場合nilが返ってくる(キーがそんざいしてかつ値がnilというのはありえない←nilが保存できないので)。 #pre{{ id value = [dictionary objectForKey:key]; if (value != nil) { //キーが存在 } }}