[英]Fetch NSarray from the NSDictionary of NSArray using objectForKey
我有一个NSArray
包含n个NSDictionary
sampleArray =
(
{
0 = 0;
1 = 0;
},
{
0 = 86400;
1 = 2;
},
{
0 = 172800;
1 = 4;
},
{
0 = 259200;
1 = 5;
}
)
现在,我需要获取objectForKey
0 [sampleArray objectForKey:[NSNumber numberWithInt:0]]
NSArray,我的结果NSArray应该像(0,86400,172800,259200),但是我无法获取结果,应用崩溃。
通常对于NSDictionary,如果使用NSString
valueForKey
设置了键值,则可以成功执行上述操作,但是如果使用NSNumber objectForKey
这样的对象设置了键值,则无法执行该操作。
请帮助我获得解决方案,任何建议将不胜感激!
这不起作用-对不起:我没有看到您没有将Strings作为键+我不知道KVC仅适用于字符串
我虽然离开
您正在寻找的是
NSArray *zeros = [mainArray valueForKey:@"0"];
它从数组中的每个字典获取“ 0”
如果您的键是NSNumber
对象,这是一种非常简单的方法:
NSMutableArray *result = [[NSMutableArray alloc] init];
for (NSDictionary *d in a) {
if (d[@0]) {
[result addObject:d[@0]];
}
}
你所要做的是
NSMutableArray *arrResult = [[NSMutableArray alloc]init];
for(int i=0;i<[sampleArray count];i++)
{
NSString *strValue = [[sampleArray objectAtIndex:i] valueforkey:@"0"];
[ arrResult addobject:strValue];
}
让我知道它是否有效!!!!
快乐编码!!!
在这里你可以尝试NSArray * tempArray
for (NSDictionary *list in tempArray)
{
[firstArray addObject:[list objectForKey:@"0"];
[secondArray addObject:[list objectForKey:@"1"];
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.