gpt4 book ai didi

java - 在 Java 中以可变精度(不四舍五入)打印 double

转载 作者:行者123 更新时间:2023-12-01 11:11:09 25 4
gpt4 key购买 nike

我希望将 double 打印为可变精度,但不进行舍入。例如:

    Scanner input = new Scanner(System.in);
double num;
System.out.println("Enter a double:");
num = input.nextDouble();
int precision;
System.out.println("Enter precision:");
precision = input.nextInt();

现在我想将 num 打印到精度的小数位。有没有简单的方法来打印这个?

编辑:我还没有看到关于如何使用变量值的另一个问题的答案。 DecimalFormat 选项对数字进行四舍五入,这是我不想要的。理想情况下,我正在寻找一种在以下位置使用变量的方法:

    "%.nf"

而不是

    "%.3f"

最佳答案

使用 "%.nf" 作为格式化字符串,其中 n 替换为小数位数。

示例:

System.out.printf("%.1f, %.2f\n", 1.234d, 1.234d);
// 1.2, 1.23

参见the Javadoc .

要将变量插入其中,只需执行 "%"。 + intValue + "f".

关于java - 在 Java 中以可变精度(不四舍五入)打印 double ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32356043/

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