id 変数 = [《NSDictionary*》objectForKey:の引数に、キーのオブジェクトを指定します。これで、そのキーの値が取り出されます。これは単純ですね。続いて、保管されているデータ数を得るメソッド。
objectForKey:《id》];
NSUInteger 変数 = [《NSDictionary*》 count];NSArrayにも同様のものがあったのでわかりますね。いくつデータが保管されているのかを返します。ただし、NSDictionaryはインデックス番号で要素を取り出せないので、これで要素数を調べて繰り返しを使って……なんて考えてはだめですよ。
NSArray *変数 = [《NSDictionary*》 allKeys];これが、すべてのキーをNSArrayとして取り出すためのメソッドです。同様に、すべての値をNSArrayで取り出すメソッドもあります。
NSArray *変数 = [《NSDictionary*》 allValues];NSDictionaryは、要素の並び順は保証されていませんが、allKeysとallValuesでとり出されるキーと値の順番は同じになっているようです。ただ、確実にキーと値をセットで取り出したいなら、allKeysでキーを取り、それを使って値を取り出すべきでしょう。
※リストが表示されない場合
AddBlockなどの広告ブロックツールがONになっているとリストなどが表示されない場合があります。これらのツールをOFFにしてみてください。
#import <Foundation/Foundation.h>
int main (int argc, const char * argv[]) {
@autoreleasepool {
NSDictionary* dic = [NSDictionary
dictionaryWithObjectsAndKeys:
@"090-9999-9999",@"tuyano",
@"03-555-5555",@"taro",
@"080-765-4321",@"hanako",nil];
NSArray* keys = [dic allKeys];
id obj;
for (obj in keys){
id val = [dic objectForKey:obj];
NSLog(@"%@: %@",obj,val);
}
}
return 0;
}
| << 前へ | 次へ >> |