我知道你所有的键添加到一个数组,并将其添加到字典中的一面,但我很好奇,你怎么可以添加或在字典中的某一点插入值。我的方式有它现在我认为它只是不断重写最后条目,以腾出空间给新的一个:

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]);

继承人的输出:

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