JAVA String转float后值不对,字符串134886.07通过Float.parseFloat(134886.07)转换后的值为134886.06

 我来答
kiley1984
2013-05-21 · 超过44用户采纳过TA的回答
知道小有建树答主
回答量:100
采纳率:85%
帮助的人:66.4万
展开全部
float有精度限制,并且float只能表示7位有效数字,134886.07已经超出了float的精度范围,建议使用double
戢初昳0ig0055
2013-05-21 · TA获得超过566个赞
知道小有建树答主
回答量:143
采纳率:0%
帮助的人:147万
展开全部
您好,提问者:
因为float是单精度,精确不是很准,建议转换为double类型。
PS:8个基本类型中 两个浮点数,默认的是double,推荐使用double。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lyljuhao
2013-05-21
知道答主
回答量:11
采纳率:0%
帮助的人:1.6万
展开全部
float是单精度,你的字符超出了float表示范围
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-05-21
展开全部
System.out.println( Double.parseDouble("134886.07") );

没法,换Double吧,相容的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式