Returns the smallest double value that is greater than or equal to the input. Equivalent to mathematical ⌈x⌉ (ceiling function). @param number the number to ceil @return the smallest double greater than or equal to number
(double number)
| 16 | * @return the smallest double greater than or equal to {@code number} |
| 17 | */ |
| 18 | public static double ceil(double number) { |
| 19 | if (Double.isNaN(number) || Double.isInfinite(number) || number == 0.0 || number < Integer.MIN_VALUE || number > Integer.MAX_VALUE) { |
| 20 | return number; |
| 21 | } |
| 22 | |
| 23 | if (number < 0.0 && number > -1.0) { |
| 24 | return -0.0; |
| 25 | } |
| 26 | |
| 27 | long intPart = (long) number; |
| 28 | if (number > 0 && number != intPart) { |
| 29 | return intPart + 1.0; |
| 30 | } else { |
| 31 | return intPart; |
| 32 | } |
| 33 | } |
| 34 | } |
no outgoing calls