我有一个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
之类的对象设置键值,则无法执行操作。
请帮助我找到解决方案,任何建议将不胜感激!
答案 0 :(得分:3)
这不起作用 - 对不起:我没有看到你没有把弦作为键+我不知道KVC只适用于字符串
我留下了
您正在寻找的是
NSArray *zeros = [mainArray valueForKey:@"0"];
从数组
中的每个字典得到“0”答案 1 :(得分:3)
如果你的密钥是NSNumber
个对象,那么这是一种非常直接的方式:
NSMutableArray *result = [[NSMutableArray alloc] init];
for (NSDictionary *d in a) {
if (d[@0]) {
[result addObject:d[@0]];
}
}
答案 2 :(得分:0)
你所做的是
NSMutableArray *arrResult = [[NSMutableArray alloc]init];
for(int i=0;i<[sampleArray count];i++)
{
NSString *strValue = [[sampleArray objectAtIndex:i] valueforkey:@"0"];
[ arrResult addobject:strValue];
}
让我知道它是否有效!!!!
快乐的编码!!!!!
答案 3 :(得分:0)
在这里你可以尝试NSArray * tempArray
for (NSDictionary *list in tempArray)
{
[firstArray addObject:[list objectForKey:@"0"];
[secondArray addObject:[list objectForKey:@"1"];
}