首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Java:将双精度值转换为字符串

Java:将双精度值转换为字符串
EN

Stack Overflow用户
提问于 2009-10-05 16:39:05
回答 4查看 6.9K关注 0票数 4

我有一个价值10,000,000.00 (一千万)的双精度数。我必须将其转换为String。当使用toString方法时,我得到的String是"1.0E7“,它符合规范。不幸的是,我需要String "10,000,000.00“(或等效的,取决于地区)。

如何才能做到这一点?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2009-10-05 16:42:04

试一试

NumberFormat http://java.sun.com/javase/6/docs/api/java/text/NumberFormat.html

DecimalFormat http://java.sun.com/javase/6/docs/api/java/text/DecimalFormat.html

票数 12
EN

Stack Overflow用户

发布于 2009-10-05 16:50:37

除了格式化程序之外,您还可以考虑使用java.math.BigDecimal类来精确表示数字。

需要完全准确的计算,例如财务计算,最好使用BigDecimal执行。浮点数学更适合于工程、图形和其他数学计算,在这些计算中,可以牺牲一些精度来换取速度。

票数 5
EN

Stack Overflow用户

发布于 2009-10-05 17:21:38

代码语言:javascript
复制
  public static void main(String[] args) throws ParseException {
    double aDouble = 10000000.00;
    DecimalFormat nf = (DecimalFormat) NumberFormat.getInstance(Locale.US);
    String aString = Double.toString(aDouble);
    System.out.println(nf.parse(aString));
  }
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1521122

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档