gpt4 book ai didi

java - 将 double 四舍五入到小数点后两位,显示 "#.00"而不是 "#.0"

转载 作者:行者123 更新时间:2023-12-02 09:31:48 27 4
gpt4 key购买 nike

我的 Android 应用程序(Java 代码)正在显示,例如 15.0我需要显示的格式是 15.00 。我的变量是 double 。我怎样才能做到这一点?我尝试过的是 Jonik 在 Round a double to 2 decimal places 的回答中的以下代码:

public static double round(double value, int places) {
if (places < 0) throw new IllegalArgumentException();
BigDecimal bd = BigDecimal.valueOf(value);
bd = bd.setScale(places, RoundingMode.HALF_UP);
return bd.doubleValue();
}

然后我用这个:

double myValue = 15.0;
round(myValue, 2);
System.out.println(myValue);

我想看看15.00打印出来。然而,我看到的是15.0这不是我想要的。有什么想法可以实现我的需要吗?谢谢。

最佳答案

我认为您正在寻找 NumberFormat 。像这样的东西应该有效:

double a = 10.19823493;
double b = 1.2;

NumberFormat formatter = NumberFormat.getInstance();
formatter.setMaximumFractionDigits(2);
formatter.setMinimumFractionDigits(2);

System.out.println(formatter.format(a)); // "10.20"
System.out.println(formatter.format(b)); // "1.20"

关于java - 将 double 四舍五入到小数点后两位,显示 "#.00"而不是 "#.0",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57898084/

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