sparklyllama - 6 months ago 13

Java Question

How could I always round UP a double to an int, and never round it down.

I know of

`Math.round(double)`

So if it was

`3.2`

Answer

You can use `Math.ceil()`

method.

See JavaDoc link: http://docs.oracle.com/javase/7/docs/api/java/lang/Math.html#ceil(double)

From the docs:

**ceil**

```
public static double ceil(double a)
```

Returns the smallest (closest to negative infinity) double value that is greater than or equal to the argument and is equal to a mathematical integer. Special cases:

- If the argument value is already equal to a mathematical integer, then the result is the same as the argument.
- If the argument is NaN or an infinity or positive zero or negative zero, then the result is the same as the argument.
- If the argument value is less than zero but greater than -1.0, then the result is negative zero.

Note that the value of Math.ceil(x) is exactly the value of -Math.floor(-x).

**Parameters:**

- a - a value.

**Returns:**

The smallest (closest to negative infinity) floating-point value that is greater than or equal to the argument and is equal to a mathematical integer.

Source (Stackoverflow)

Comments