我还是Java的新手,想知道有没有办法在不四舍五入的情况下格式化double? 例如:
double n = 0.12876543;
String s = String.format("%1$1.2f", n);
如果我打印到系统上,它会返回0.13而不是精确的0.12。现在,我已经想到了一个解决方案,但我想知道是否有更好的方法来解决这个问题。这是我的简单解决方案:
double n = 0.12876543;
double n = Double.parseDouble(String.format(("%1$1.2f", n));
有其他的想法或解决方案吗?
0.128...
时,0.12
比0.13
更精确吗? - Boris the SpiderMath.floor()
:n = Math.floor(n * 100) / 100;
。 - PhylogenesisString.format("%1$1.2f", n - 0.005);
。 - Phylogenesis