- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
好的,我获取 Json 提要并将其存储到名为 jsonArray 的数组中。然后,我循环遍历 jsonArray,取出数组键并将它们存储为字符串。然后我将这些字符串添加到一个名为 innerDict 的内部字典中,然后我使用下面的代码将该字典添加到带有键 thePostCode 的信息字典中。所以基本上 innerDict 存储在 infoDict 中。
-(void)pointInfo{
infoDict = [[NSMutableDictionary alloc]init];
for (int i = 0; i < jsonArray.count; i++) {
innerDict = [[NSMutableDictionary alloc]init];
info = [[jsonArray objectAtIndex:i]objectForKey:@"inf"];
thePostCode = [[jsonArray objectAtIndex:i]objectForKey:@"pc"];
mail = [[jsonArray objectAtIndex:i]objectForKey:@"mail"];
url = [[jsonArray objectAtIndex:i]objectForKey:@"url"];
type = [[jsonArray objectAtIndex:i]objectForKey:@"items"];
[innerDict setObject:type forKey:@"Items"];
[innerDict setObject:info forKey:@"Info"];
[innerDict setObject:mail forKey:@"Mail"];
[innerDict setObject:url forKey:@"Url"];
[infoDict setObject:innerDict forKey:thePostCode];
}
infoDict 的输出如下所示:
infoDict is {
"ME14 4NN" = {
Info = "";
Items = 4;
Mail = "";
Url = "";
};
"ME15 6LG" = {
Info = af;
Items = "0,6,9";
Mail = "";
Url = "";
};
"ME15 6YE" = {
Info = "";
Items = "4,5,6,7,11";
Mail = "";
Url = "";
};
}
现在我想要做的是获取 innerDict 对象的值,即上面的“ME15 6YE”,并将其用作查询以提取 Info、Items、Mail 和 Url 键的关联数据。我已经盯着屏幕看了几个小时了,但就是不明白。
我可以使用下面的方法提取内部字典的最后一个对象,但是我想获取与特定邮政编码关联的所有值,这些值将是 innerDict 键。瞬间脑残了!
for (NSMutableDictionary *dictionary in infoDict) {
NSLog(@"URL %@", [innerDict objectForKey:@"Url"]);
NSLog(@"MAIL %@", [innerDict objectForKey:@"Mail"]);
NSLog(@"ITEMS %@", [innerDict objectForKey:@"Items"]);
NSLog(@"ITEMS %@", [innerDict objectForKey:@"Info"]);
}
最佳答案
要获取正确的内部字典,请使用objectForKey
:
NSDictionary *innerDict = [infoDict objectForKey:@"ME15 6YE"];
NSLog(@"Url %@", [innerDict objectForKey:@"Url"]);
NSLog(@"Mail %@", [innerDict objectForKey:@"Mail"]);
NSLog(@"Items %@", [innerDict objectForKey:@"Items"]);
NSLog(@"Info %@", [innerDict objectForKey:@"Info"]);
关于ios - 拉出内部 NSMutableDictionary iOS 的 valueForKeys,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14774989/
愚蠢的问题警告......我可能会被剥夺 sleep ,但我似乎无法弄清楚这一点。 'current' 是一个 NSDictionary if ([current valueForKey:@"name
在我的应用程序中有一个名为“selectedItems”的 NSDictionary,它包含键“Order”。该值可以由用户更改。NSDictionary lokks 的定义如下: self.sele
我是 iOS 的新手,正在开发一个基本的应用程序,它目前正在使用 SSKeychain 和 AFNetworking 与 API 进行交互。当您使用我检索的应用程序登录并在我的 CredentialS
我正在使用 NSDictionary 来存储一组值,并且我正在尝试将它们分配给一个 double 值。但是我不确定该怎么做,valueforkey 返回一个 id,它是一个指针。我曾尝试使用“*”获取
NSDictionary *topic = [spaces objectAtIndex:i]; NSInteger topicid = [topic valueForKey:@"TOPICID
我有一个我想要一个值的 NSArray。 _membersArray = [_detailItem valueForKey:@"members"]; 当我使用此代码时: NSLog(@"%lu", (
我有两个从实体派生的NSManagedObject子类ActivityMember和Member。成员具有一个称为名称的属性,而 Activity 成员通过与成员一对一的关系具有一个称为成员的属性。我
我偶尔会遇到这种崩溃,这很难重现: 0 CoreFoundation 0x39ff73e2 __exceptionPreprocess + 158 1 lib
如何从下面的 NSMutableArray 数组中检索键值。以下代码在 isEqualToString 上崩溃。但是,在运行该语句之前,我可以在变量 View 窗口中看到 nsRet 的值为 @\x1
我是 IOS 编程的新手,正在尝试修改开发人员为我编写的一些代码。我在以下代码中遇到问题 NSUserDefaults *pref=[NSUserDefaults standardUserDefaul
我有一些代码从 plist 中提取数据: myImage.image = [UIImage imageNamed:[[myArray1 objectAtIndex:indexValue] valueF
我正在尝试使用字符串(“levelNumberString”)作为 NSDictionary 中的 valueForKey。当我使用像 @"1" 这样的字符串时,它一切正常,但是当我决定将那种字符串换
在 Objective-C 中,如果我有一个对象数组,并且每个对象都有一个 id 键,如下所示: NSArray *array = @[@{@"id":@(1), @"name":@"Bob"}, @
我还有一个关于检查 valueForKey 是否存在的问题。这是我的代码: id _jsonId = [NSJSONSerialization JSONObjectWithData:[_json da
我无法理解为什么我的有序集只保存了 1 个条目。 我的代码如下: let newInovice = NSEntityDescription.insertNewObjectForEntityForNam
我想在一个简单的游戏中保存高分。我是 swift 2 的新手,不确定我做错了什么。我收到错误消息“‘int’类型的值没有‘valueForKey’的成员。这是我上次尝试失败时的代码。 var high
我有一个简单的类 User。当我尝试调用 valueForKey 时,其中键是可选值,我收到错误消息。见下文: class User : NSObject{ var name = "Greg"
我有一个 NSMutableDictionary,其键是对象名称的第一个字母。该 View 类似于 iPhone 上的“联系人”选项卡。此外,用户可以选择列表中的单个对象。 在代码中,我找到每个选定的
我正在接收 JSON 数据并将其转换为字典。打印字典结果如下: Objekt: { author = blub; authorUID = 28084; date = "31.07.10"; numVo
我将一些对象标记为不事件 [apIndicators[i] setValue:[NSNumber numberWithBool:NO] forKey:@"isActive"]; 后来我将其中一些设置为
我是一名优秀的程序员,十分优秀!