我的大脑被炸了!我无法思考。我是iphone编程的新手
正在进行json解析。。。。在这个例子中,我将数据从json存储到nsdictionary,但是。。。。。。。我想将字典中的所有nsdictionary浮点值添加到数组中。这就是我现在正在做的事情。如下代码:
- (void)connectionDidFinishLoading:(NSURLConnection *)connection
{
[connection release];
NSString *responseString = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding];
self.responseData = nil;
dict = [responseString JSONValue];
NSMutableArray *array = [NSMutableArray array];
for (NSString *key in [dict allKeys])
{
array = [dict objectForKey:key];
// array return float values but
[array addObject:array ]; // geting carsh dude to array return float values like 120.01
}
请引导我,我没有得到一个部分,我正在做一个错误。提前谢谢。
您的应用程序正在崩溃,因为您正在向NSArray
添加数据,这是静态数组,您无法在运行时添加值,所以只需生成NSMutableArray
并在NSMutableArray
中添加数据。
您的代码在以下几个方面被破坏。
此行将数组指针分配给字典中的对象:
array = [dict objectForKey:key];
然后您试图将数组添加到自身,这是没有意义的。但更糟糕的是,由于array
不再指向您的NSMutableArray
,您甚至无法调用该方法。
[array addObject:array ];
你可能想做这样的事情:
for (NSString *key in [dict allKeys])
{
id value = [dict objectForKey:key];
[array addObject:value];
}