[英]NSDictionary and JSON value
我的JSON中有这个:
{"idAlunoGraduacao":001,"semestre":2,"ano":2010,"frequencia":100,"notaFinal":6,"conceito":"Aprovado","idTurma":"Biofisica"},
{"idAlunoGraduacao":002,"semestre":2,"ano":2010,"frequencia":88,"notaFinal":9.2,"conceito":"Aprovado","idTurma":"Diversidade sexual"}
在我的.h文件中,我有这个循环:
for (NSDictionary *dados in results)
NSLog(@"%@",[dados objectForKey:@"notaFinal"]);
第一个“ notaFinal”为6,可以正常打印,但第二个结果为:9.199999999999999
为什么?
您的JSON不是JSON ,下一个代码是JSON :
[{{“ idAlunoGraduacao”:1,“ semestre”:2,2,“ ano”:2010,“ frequencia”:100,“ notaFinal”:6,“ conceito”:“ Aprovado”,“ idTurma”:“ Biofisica”},{ “ idAlunoGraduacao”:2,“ semestre”:2,“ ano”:2010,“ frequencia”:88,“ notaFinal”:9.2,“ conceito”:“ Aprovado”,“ idTurma”:“ Diversidade sex”}]
另外,您的JSON与文字NSDictionary非常相似。
@{@"idAlunoGraduacao":@001,@"semestre":@2,@"ano":@2010,@"frequencia":@100,@"notaFinal":@6,@"conceito":@"Aprovado",@"idTurma":@"Biofisica"};
然后,您说: “在我的.h文件中,有这个循环:” ,我很确定您在.m中有循环。
在Objective-C中,最佳实践是在for循环和if-else中使用curly brackets
:
for (NSDictionary *dados in results)
{
NSLog(@"%@",[dados objectForKey:@"notaFinal"]);
}
最后,正如@Koray_Alkan所说,您可以使用
NSLog(@"Value: %.2f", [[dados objectForKey:@"notaFinal"] floatValue]);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.