Package freemarker.template.utility
Class NumberUtil
- java.lang.Object
-
- freemarker.template.utility.NumberUtil
-
public class NumberUtil extends Object
Number- and math-related utilities.- Since:
- 2.3.20
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static int
getSignum(Number num)
static boolean
isInfinite(Number num)
static boolean
isIntegerBigDecimal(BigDecimal bd)
Tells if aBigDecimal
stores a whole number.static boolean
isNaN(Number num)
static int
toIntExact(Number num)
Converts aNumber
toint
whose mathematical value is exactly the same as of the original number.
-
-
-
Method Detail
-
isInfinite
public static boolean isInfinite(Number num)
-
isNaN
public static boolean isNaN(Number num)
-
getSignum
public static int getSignum(Number num) throws ArithmeticException
- Returns:
- -1 for negative, 0 for zero, 1 for positive.
- Throws:
ArithmeticException
- if the number is NaN
-
isIntegerBigDecimal
public static boolean isIntegerBigDecimal(BigDecimal bd)
Tells if aBigDecimal
stores a whole number. For example, it returnstrue
for1.0000
, butfalse
for1.0001
.- Since:
- 2.3.21
-
toIntExact
public static int toIntExact(Number num)
Converts aNumber
toint
whose mathematical value is exactly the same as of the original number.- Throws:
ArithmeticException
- if the conversion toint
is not possible without losing precision or overflow/underflow.- Since:
- 2.3.22
-
-