为了账号安全,请及时绑定邮箱和手机立即绑定

Android 无法正确获取值中带有“.”的字符串

Android 无法正确获取值中带有“.”的字符串

有只小跳蛙 2023-07-19 17:31:22
我尝试检索包含十进制数字的字符串值,例如“3.5”。当尝试将它们检索到android时,它们会用引号移动,但是当传递包含没有小数点或没有点的数字的字符串时,不会发生这种情况,一些想法无需将int传递到数据库或无需转换“费率” “值转换为int?通过这种方式,我尝试从数据库中获取字符串“rates”值 String rating = (String) dataSnapshot.child("rates").getValue(); int ratingint = Integer.valueOf(rating);错误:java.lang.NumberFormatException: Invalid int: "3.5"这是在数据库中定义的
查看完整描述

2 回答

?
GCT1015

TA贡献1827条经验 获得超4个赞

改变这个:

 int ratingint = Integer.valueOf(rating);

进入这个:

 double ratingint = Double.valueOf(rating);


查看完整回答
反对 回复 2023-07-19
?
烙印99

TA贡献1829条经验 获得超13个赞

AnInteger 只能存储(因此解析)整数。您正在尝试解析十进制数,由于缺乏对整数值浮点的支持,这是不可能直接解析的。

您可能想将其解析为 aDouble或 a Float。如果您确实需要它是一个int,则可以使用一些不同的数学函数将该十进制数舍入为整数。


查看完整回答
反对 回复 2023-07-19
  • 2 回答
  • 0 关注
  • 104 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信