-6

ループではなく辞書の値を取得するにはどうすればよいですか。以下を使用して単一の値を取得する方法を知っています。

NSString *valueStr = [dict objectForKey:@"Key2"];

すべてのキーをループして取得する必要があり、辞書で値を検索する必要があります。

4

4 に答える 4

1

NSDictionaryを使用しようとしているように見えるので、次のようにします。

for (NSString *key in [dict allKeys]){
    NSLog(@"%@", [dict objectForKey:key]);
}

または、ループを使用したくない場合は、次のことができます。

NSArray *keys = [dict allKeys];
NSArray *values = [dict allValues];
于 2012-11-15T12:51:49.483 に答える
0
for (NSString *key in <#dictionary#>)
{
    <#!loopcontents#>
    [dictionary objectForKey:key]
}
于 2012-11-15T12:49:01.613 に答える
0

を持っているようですがNSDictionary、次の方法ですべてのキー/値にアクセスできます。

NSArray *keys = [dict allKeys];
NSArray *values = [dict allValues];

https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSDictionary_Class/Reference/Reference.htmlを参照

もちろん、そのキーと値のペアをループすることができます

for (NSString *key in [dict allKeys]) {

    //get value
    NSString *value = [dict objectForKey:key];

    //print to log
    NSLog (@"%@, %@", key, value);
}
于 2012-11-15T12:49:24.240 に答える
0

Omarj と Rene からの回答を組み合わせる:

for (NSString *key in [dict allKeys])
{
    NSString *value = [dict objectForKey:key];
}
于 2012-11-15T12:51:35.310 に答える