8

次のコードがあります。

int total = 6;
int perPage = 5;
double pages = total/perPage;
double ceilPages = Math.ceil(pages);
out.println(ceilPages);

どの出力1.0.

の結果が2.0なので、出力するべきだと思いました。total/perPage1.2

に切り上げられないのはなぜ2.0ですか?

4

3 に答える 3

23

整数除算の結果を double にキャストしています。

結果の前に、除算の各部分を double にキャストする必要があります。

double pages = (double)total/(double)perPage;

残りはうまくいくはずです

于 2014-06-05T14:11:09.260 に答える