どのように私は、配列を使用せずにNSMutableDictionaryに複数のキーと値を追加するには?

StackOverflow https://stackoverflow.com/questions/2059397

質問

私はあなたの配列にすべてのキーを追加し、辞書の片側にそれを追加することができます知っているが、私はあなたが追加したり、辞書内の特定のポイントで値を挿入することができますどのように興味があります。

:私はそれを持っている方法は、今では私はそれだけで新しいもののための部屋を作るために、最後のエントリを上書きし続けると信じて
NSMutableDictionary *bookmarks = [[NSMutableDictionary alloc] init];
NSString *keyA = @"Stanford University";
NSString *keyB = @"Apple";
NSString *keyC = @"cs193p.com";
NSString *keyD = @"Stanford on iTunes";
NSString *keyE = @"Stanford Mail";
NSString *surlA = @"http://www.stanford.edu";
NSString *surlB = @"http://www.apple.com";
NSString *surlC = @"http://www.cs193p.stanford.edu";
NSString *surlD = @"http://www.itunes.stanford.edu";
NSString *surlE = @"http://www.stanfordshop.com";

NSURL  *urlA;
urlA = [NSURL URLWithString:surlA]; 
NSURL  *urlB;
urlA = [NSURL URLWithString:@"http://www.apple.com"]; 


[bookmarks setValue:urlA forKey: keyA];
[bookmarks setObject:urlB forKey: keyB];
//[bookmarks setObject:urlC forKey: keyC];
//[bookmarks setObject:urlD forKey: keyD];
//[bookmarks setObject:urlE forKey: keyE];

 NSLog(@"%@", [bookmarks valueForKey:keyA]);

出力をHERESます:

2010-01-13 11:08:51.484 assignment_1b [6035:a0f] http://www.apple.com

役に立ちましたか?

解決

私はコードだけでクラッシュしていないことを驚いています。ここで参照してください。

NSURL  *urlA;
urlA = [NSURL URLWithString:surlA]; 
NSURL  *urlB;
urlA = [NSURL URLWithString:@"http://www.apple.com"]; 

あなたはurlBに割り当てる二回、決してウルラに割り当てます。それを修正し、正しい値が記録され表示されます。

また、あなたがこれを行うことができます注:

NSLog(@"dictionary: %@", anNSDictionary);

と辞書内のキー/値ペアのすべてを見ています。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top