【问题标题】:Android String to double conversion [duplicate]Android字符串到双重转换[重复]
【发布时间】:2018-06-04 23:00:06
【问题描述】:

当使用 Double.parseDouble(stringValue) 将 0.0001 从字符串转换为双精度时,返回 1.0E-4。如何获得 4 位小数的双精度值 0.0001。

【问题讨论】:

  • String.format("%.4f",secondNumber);
  • 0.0001 是一个字符串,我希望输出为双倍。与 0.0001 完全相同,而不是字符串。
  • @AndEngine 但是1.0E-4 is exactly the same as 0.0001 就数据如何存储为双精度而言。当您在记录输出时转换回字符串时,您只会得到不同的表示形式。

标签: android string type-conversion double


【解决方案1】:

您可以使用 DecimalFormat 来定义应在昏迷后显示多少位置。

String stringValue= 0.0001;
DecimalFormat df = new DecimalFormat("##0.###");
df.format(stringValue);

1.0E-4 表示类似于 1.0 * 10^-4 与 0.0001 相同

更多关于 DecimalFormat 的信息请看这里https://developer.android.com/reference/java/text/DecimalFormat.html

【讨论】:

  • 我希望输出到双变量
  • 这是 Java 存储双精度值的标准方式,不知道有什么方法可以改变它。如何存储双精度并不重要,您可以在屏幕上打印时转换它。用户不会介意的。
猜你喜欢
  • 1970-01-01
  • 2013-02-25
  • 2011-06-12
  • 2014-06-20
  • 1970-01-01
  • 1970-01-01
  • 2017-10-06
  • 2014-01-06
相关资源
最近更新 更多