float相除,只需要小数点后一位

goodflash 2003-10-15 01:23:58
float a=3;
float b=123;
a/b=0.2213232

我只要小数点后一位,怎么做?
...全文
221 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
goodflash 2003-10-15
  • 打赏
  • 举报
回复
to whyxx:
OK,你的方法可以正常运行。
java_jin 2003-10-15
  • 打赏
  • 举报
回复
java.math.BigDcimal bd = new java.math.BigDecimal(a/b);
bd = bd.setScale(1,bd.ROUND_HALF_UP);
System.out.println(bd.floatValue());或
System.out.println(bd.toString());
realzealy 2003-10-15
  • 打赏
  • 举报
回复
把float转化成String型,再用indexOf()取出"."的位置,再用substring()取出"."后一位以前的所有字符,再转回float
whyxx 2003-10-15
  • 打赏
  • 举报
回复
如果想不丢失精度的话只能用BigDecimal
float a=30;
float b=123;
BigDecimal cc = new BigDecimal(a/b).setScale(1,BigDecimal.ROUND_HALF_UP);
float c = cc.floatValue();
System.out.println(cc);
danceflash 2003-10-15
  • 打赏
  • 举报
回复
把得出的结果放入DataFormat对象中处理一下

62,615

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧