内容简介:翻译自:https://stackoverflow.com/questions/11165192/testing-for-null-json-objects-in-java-android
我得到这个LogCat:
06-22 15:30:53.731: E/AndroidRuntime(2389): java.lang.NumberFormatException: Invalid float: "null" 06-22 15:30:53.731: E/AndroidRuntime(2389): at java.lang.StringToReal.invalidReal(StringToReal.java:63) 06-22 15:30:53.731: E/AndroidRuntime(2389): at java.lang.StringToReal.parseFloat(StringToReal.java:310) 06-22 15:30:53.731: E/AndroidRuntime(2389): at java.lang.Float.parseFloat(Float.java:300) 06-22 15:30:53.731: E/AndroidRuntime(2389): at java.lang.Float.valueOf(Float.java:337)
这是代码:
try
{
jObject = new JSONObject(result);
starAvg = jObject.getString("AverageRating");
}
ratingsBar = (RatingBar) findViewById(R.id.theRatingBar);
ratingsBar.setRating(Float.valueOf(starAvg));
以下是上下文:
在 PHP 中,我在 MySQL 表的列中平均总数.当存在任何行时,它将发回其中的平均数据并对其进行编码,Java将其作为JSON对象进行选择.但有时,有些情况下表可能有0行,所以我得到这个JSON对象:
{"AverageRating":null}
我的应用程序然后崩溃,LogCat如上所示.
如果它拿起一个Null JSON对象,但是当我执行Float.valueOf(theString)时应用程序崩溃,String似乎并不关心.
另一方面,我试图以这种方式进行测试:
if String is Null, Float = 0 if String is not null, Float.valueOF(String)
但它似乎永远不会将String读为null.在这种情况下,它实际上不是null吗?
使用以下JsonObject方法检查针对任何键的值是否为null
public boolean isNull(java.lang.String key)
此方法用于针对任何键检查Null,或者如果没有键值.
使用下面的代码段
if (jsonObject.isNull("AverageRating")) {
Toast.makeText(this, "Cannot Convert!!", Toast.LENGTH_LONG).show();
//float set to 0
} else {
Float.valueOf(jsonObject.getString("AverageRating"));
}
翻译自:https://stackoverflow.com/questions/11165192/testing-for-null-json-objects-in-java-android
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 《分布式对象存储》作者手把手教你写 GO 语言单元测试!
- OC对象的本质 实例对象,类对象,元类对象
- 可迭代对象,迭代器(对象),生成器(对象)
- 重学前端学习笔记(七)--JavaScript对象:面向对象还是基于对象?
- Webform 内置对象 Session对象、Application全局对象,ViewState详细介绍
- 对象.原型链,函数.原型对象
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Google将带来什么?
杰夫·贾维斯 / 陈庆新、赵艳峰、胡延平 / 中华工商联合出版社 / 2009-8 / 39.00元
《Google将带来什么?》是一本大胆探索、至关重要的书籍,追寻当今世界最紧迫问题的答案:Google将带来什么?在兼具预言、宣言、思想探险和生存手册性质的这样一《Google将带来什么?》里,互联网监督和博客先锋杰夫·贾维斯对Google这个历史上发展速度最快的公司进行了逆向工程研究,发现了40种直截了当、清晰易懂的管理与生存原则。与此同时,他还向我们阐明了互联网一代的新世界观:尽管它具有挑战性......一起来看看 《Google将带来什么?》 这本书的介绍吧!