0

次のようなNSDictionaryに含まれているものではなく、ケットを参照したいと思います。

key {
    14819 =     {
        contactDetails =         {
            dictionary =             {
                interests =                 {
                    Movies =   
      ...

私はこのようなものを作りたいです:

if([key isEqualToString:@"14819"]){
 do something
}

手伝って頂けますか?

4

3 に答える 3

1

キーがディクショナリに存在するかどうかをテストするだけの場合は、 を使用objectForKey:して、オブジェクトが存在しないかどうかをテストしますnil

キーの取得allKeysと検索は機能しますが、ほぼ確実に遅くなります。辞書はハッシュ テーブルです。objectForKey:その事実を使用しますが、使用しallKeysません。

于 2012-11-08T20:31:39.937 に答える
1

nsdictionary で allkeys メソッドを使用してキー配列を取得し、反復して比較することができます! このような:

NSArray*keys=[dict allKeys];
for(NSString *key in keys) {
    if ([key compare@"14819"] == NSOrderedSame) {
        do something
    }
}
于 2012-11-08T18:13:01.067 に答える
1

allKeys で検索できるはずです。簡単な例を書きました。これが役立つことを願っています。

NSMutableDictionary *testDictionary = [[NSMutableDictionary alloc]init];
[testDictionary setObject:@"value" forKey:@"testObject"];

BOOL containsKey = [[testDictionary allKeys] containsObject:@"testObject"];

NSLog(@"testing %d" ,containsKey);
于 2012-11-08T18:17:26.827 に答える