为什么Math.ceil不能向上舍入?

crm*_*ham 4 java math ceil

我有以下代码:

int total = 6;
int perPage = 5;
double pages = total/perPage;
double ceilPages = Math.ceil(pages);
out.println(ceilPages);
Run Code Online (Sandbox Code Playgroud)

哪个输出1.0.

我认为应该输出2.0因为结果total/perPage1.2.

为什么不向上舍入2.0

Ada*_*ost 16

您正在将整数除法的结果转换为double.

在结果之前,你需要将除法的每个部分都加倍.

double pages = (double)total/(double)perPage;
Run Code Online (Sandbox Code Playgroud)

其余的应该工作

  • 不是每个部分.铸造第一个就足够了. (6认同)