json文件中的值为75.38,我编写了代码以在Eclipse中解析该值:
double legacyPremium = (double) object.get("legacyPremium");
而且我得到了错误:
Exception in thread "main" java.lang.ClassCastException: java.lang.Long cannot be cast to java.lang.Double at com.domain.project.Class.main(Class.java:56)
Json文件是:
{
"elementaryProductId":1,
"bonusMalus":5,
"deductible":100,
"comprehensive":1,
"partial":0,
"legacyPremium":75.38,
"product":{
"productId":2,
"garage":"true",
"constructionYear":2005,
"region":"East",
"dateOfBirthYoungest":"1999-06-22",
"objectValue":30000,
"type":"Car",
"insuredObject":{
"name":"Car",
"ownersName":"Jelena",
"mileage":300000,
"engineCapacity":210
},
"salesProduct":{
"salesProductId":3,
"currency":"EUR",
"contractStart":"2013-01-01",
"contractEnd":"2014-01-01"
},
"productType":"Car"
}
},
有人知道是什么问题吗?
尝试使用
double x = Double.valueOf(object.get("x").toString());
代替
double x = (double) object.get("x");
这将使您摆脱铸造问题。请考虑到该字符串必须可转换为Double类型。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句