Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/377.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我的案例应该使用什么舍入方法?_Java_Decimal_Rounding - Fatal编程技术网

Java 我的案例应该使用什么舍入方法?

Java 我的案例应该使用什么舍入方法?,java,decimal,rounding,Java,Decimal,Rounding,我正在建立一个需要双打的班级 在它中,基于输入n,它(最大值)将有n个小数位,如果可能的话,将跳过后面的零 //If n = 2, //1.697 -> 1.7 (instead of 1.70) (edit) //1.000 -> 1 (instead of 1.00) //1.658 -> 1.66 似乎有很多舍入技巧,但我不确定哪一种适用于我的情况 任何帮助都将不胜感激。 谢谢您应该在此处阅读有关决策格式的内容:

我正在建立一个需要双打的班级

在它中,基于输入n,它(最大值)将有n个小数位,如果可能的话,将跳过后面的零

//If n = 2,

//1.697 -> 1.7  (instead of 1.70)     (edit)       
//1.000 -> 1    (instead of 1.00)             
//1.658 -> 1.66
似乎有很多舍入技巧,但我不确定哪一种适用于我的情况

任何帮助都将不胜感激。
谢谢

您应该在此处阅读有关决策格式的内容:

虽然你的问题有点让人困惑。为什么是1.693到1.7,然后是1.658到1.66。
两种舍入方式都不同。

为什么1.693要舍入到1.7而不是1.69?示例的可能重复项是RoundingMode.UP,它不是标准的RoundingMode.HALF_UP:多余的数字是向上舍入5-9,向下舍入0-4。请参见注释:
1==1.00
这些值是相同的,唯一的区别是您选择如何设置格式。正如许多评论所述,我打算四舍五入到2位:1.69。我错把四舍五入到1。7@user2999870十进制格式就是你想要的!