我正在以NSArray格式从JSON中检索值。这是温度。
然而,它是在摄氏度,我希望将其转换为开尔文。我需要做的就是添加274.15。 我真的不能这样做,因为它是NSArray,我无法直接添加。
我尝试转换为NSString,然后转换为double,但似乎我没有那个选项。
这是当前的代码:
NSDictionary *temp = [currentDate objectForKey:@"temp"];
NSArray* maxTemp = [temp objectForKey:@"max"];
NSLog(@"Max Temp : %@ Kelvin",maxTemp );
NSArray* minTemp = [temp objectForKey:@"min"];
NSLog(@"Min Temp : %@ Kelvin",minTemp);
我想做的就是得到(maxTemp + 274.15)
以摄氏度为单位的当前值:
Max Temp : 28.8 Kelvin
Min Temp : 26.55 Kelvin
答案 0 :(得分:2)
由于您的日志语句显示数值,您可以告诉词典“max”和“min”键的内容不是数组。他们几乎肯定是弦乐。 (JSON将数据作为字符串发送。)
NSString有一个doubleValue方法。试试这个:
NSDictionary *temp = [currentDate objectForKey:@"temp"];
NSString* maxTempString = [temp objectForKey:@"max"];
double maxTemp = [maxTempString doubleValue];
NSLog(@"max Temp : %f Kelvin", maxTemp );
NSString* minTempString = [temp objectForKey:@"min"];
double minTemp = [minTempString doubleValue];
NSLog(@"Min Temp : %f Kelvin", minTemp);