gpt4 book ai didi

java - 如何仅在需要时打印带两位小数的 double

转载 作者:塔克拉玛干 更新时间:2023-11-01 23:07:10 25 4
gpt4 key购买 nike

我想按如下所述格式化以下值:

双 d = 1234结果应该是 1,234

双 d = 1234.0结果应该是 1,234

双 d = 1234.5结果应该是 1,234.50

这个方法我试过了

NumberFormat nf = new DecimalFormat("#,##.##");
nf.setMinimumFractionDigits(2);
nf.setMaximumFractionDigits(2);
System.out.println(nf.format(d1));

但当值为1234或1234.0时不起作用

最佳答案

这种事情对于一个格式化程序来说是一件痛苦的事情。考虑使用

if (d1 % 1.0 == 0.0/*yeah, this ain't quick, but then neither is I/O*/){
// I'm a whole number, floating point modulus is valid in Java.
// And this is a remarkably good way of testing if a floating
// point value is a whole number.
// Format to 0 decimal places.
} else {
// Format to 2 decimal places.
}

关于java - 如何仅在需要时打印带两位小数的 double ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37702910/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com