double 转 String

weixin_41998852 2019-09-30 02:32:30
要求不要丢失精度,不要科学记数法
...全文
211 11 打赏 收藏 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
秦歌 2019-10-08
  • 打赏
  • 举报
回复
阿里规约规定 【强制】小数类型为 decimal,禁止使用 float 和 double。 说明:float 和 double 在存储的时候,存在精度损失的问题,很可能在值的比较时,得到不 正确的结果。如果存储的数据范围超过 decimal 的范围,建议将数据拆成整数和小数分开存储。
oh_Maxy 2019-10-02
  • 打赏
  • 举报
回复
double本身就肉眼看到的就很长一串的
qybao 2019-10-01
  • 打赏
  • 举报
回复
引用 7 楼 weixin_41998852 的回复:
[quote=引用 5 楼 秦歌 的回复:]
bigdecimal呢

big decimal 也会失去一定的精度
[/quote]
bigdecimal应该可以,如果丢失精度,说明你的double本身就已经丢失了精读(因为bigdecimal的精度理论比double高)

BigDecimal.valueOf(your_double).toPlainString();
zzcc612 2019-10-01
  • 打赏
  • 举报
回复
字面值+""都能转成String类型,String.valueOf()也可以,或者使用StringBuilder、Stringbuffer都可以转换
weixin_41998852 2019-09-30
  • 打赏
  • 举报
回复
引用 5 楼 秦歌 的回复:
bigdecimal呢

big decimal 也会失去一定的精度
Salted-fish 2019-09-30
  • 打赏
  • 举报
回复
这种要算法的java区还真找不出几个能回答你问题的
秦歌 2019-09-30
  • 打赏
  • 举报
回复
bigdecimal呢
weixin_41998852 2019-09-30
  • 打赏
  • 举报
回复
注意条件,这些如果数值大的话都会是科学记数法
瘦死的黑骆驼 2019-09-30
  • 打赏
  • 举报
回复
String.valueOf(d)
usecf 2019-09-30
  • 打赏
  • 举报
回复
给你double变量后面 +“” 比如:double dNum=1.234 String str = dNum+“”;
wowpH 2019-09-30
  • 打赏
  • 举报
回复
String.value()不知道行不行。

62,620

社区成员

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

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