java - Java 中的舍入 double 值

标签 java

Possible Duplicate:
Round a double to 2 significant figures after decimal point

我有一个矩阵。我使用Java求出矩阵的10次方。求出10次方后,我需要将 double 值四舍五入到小数点后三位。请帮我将矩阵中的 double 值四舍五入到3 位小数。

最佳答案

您无法真正将 double 值四舍五入到小数位,因为 double 是二进制格式,而不是十进制,并且会在内部四舍五入到二进制分数。

相反,您应该在格式化输出时进行舍入。这可以在 Java 中通过多种方式完成:

String.format("%.2f", 1.2399) // returns "1.24"
new DecimalFormat("0.00").format(1.2)// returns "1.20"
new DecimalFormat("0.##").format(1.2)// returns "1.2"

阅读the Floating-Point指南以获取更多详细信息。

关于java - Java 中的舍入 double 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2857497/

相关文章:

java - 从现有变量创建映射(例如,相当于 JavaScript 的 `{varA, varB, varC}` 的 Java)

java - 程序中未触发异常处理/意外行为

Java 11 junit jupiter 断言抛出

java - 无法从结果类型为 void 错误的方法返回值

java - 在 JPA 中禁用缓存(eclipselink)

java - Eclipse 中的环境变量

java - Android 的二进制 XML 的 InflateException

java - 防止在 android 的 textwatcher 中运行两次

java - 如何在php和android之间加密和解密数据

Java 单元测试完整性指示工具?