gpt4 book ai didi

java - 上限四舍五入为 60 Java 的倍数

转载 作者:行者123 更新时间:2023-12-02 12:32:24 25 4
gpt4 key购买 nike

在提出问题之前,我想让大家知道,我确实在过去的帖子中看到了一些类似的问题,但应用后,不会完全按预期工作......基本上,我想将一个整数向上舍入为 60 的倍数。举个例子,如果我想要向上舍入的数字是 160 到 60 的倍数,则结果应为 180; (因为在60->120->180中;160比120更接近180);我的测试代码如下所示:

public static void main (String[] args) {
double a = Math.ceil(160/60)*60;
System.out.println(a);
}

它给出的输出是120.0;而不是 180。

测试代码到底出了什么问题,结果是 120 而不是 180?我是否错误地使用了 ceil() ?

最佳答案

您正在使用整数除法,这将产生一个整数。因此,正如其他人指出的那样:160/60 返回 2,而不是您期望四舍五入为 3 的 2,66。

public static void main (String[] args) {
double a = Math.ceil((float)160/60)*60;
System.out.println(a);
}

关于java - 上限四舍五入为 60 Java 的倍数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45252229/

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