' P '

whatever I will forget

Java 整数で割り算する時に値を必ず切り上げたいとき

3 / 2 = 1.5を切り上げて、
2 としたいとき。

double型が使える場合

それぞれの整数をdoubleにキャストするか、そのままdoubleに突っ込む
そしてMath.ceil()を使う
Math.ceil(3/2.0);とか、 Math.ceil(doubleA/doubleB)とすればいい
(ちなみに整数をceilにつっこむと、Math.ceil(3/2)で1になるのでザワザワします)

整数のみ(Int型のみ)でやりたいとき

(割られる数 + 割る数 – 1) / 割る数

なるほど、(3+2-1)/2 で 2になる...

hacknote.jp

あとはこんな方法も。

(3/2) + (3%2) = 2

ちなみに、floor, round, ceilの違い

これは覚えておいたほうがイイね。

  • round - 四捨五入
  • floor - 切り捨て
  • ceil - 切り上げ