Package net.sf.jasperreports.engine.util
Class Java15BigDecimalHandler
- java.lang.Object
-
- net.sf.jasperreports.engine.util.Java15BigDecimalHandler
-
- All Implemented Interfaces:
BigDecimalHandler
public class Java15BigDecimalHandler extends Object implements BigDecimalHandler
BigDecimalHandler
implementation used on Java 1.5 or newer.This implementation uses a configured minimum precision when performing divisions.
- Author:
- Lucian Chirita (lucianc@users.sourceforge.net)
- See Also:
BigDecimalUtils.divide(BigDecimal, BigDecimal)
,PROPERTY_MINIMUM_PRECISION
-
-
Field Summary
Fields Modifier and Type Field Description static String
PROPERTY_MINIMUM_PRECISION
An integer property that provides the minimum precision to be used for division operations.
-
Constructor Summary
Constructors Constructor Description Java15BigDecimalHandler()
Java15BigDecimalHandler(int minPrecision)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description BigDecimal
divide(BigDecimal dividend, BigDecimal divisor)
Divides the values using the biggest of the dividend precision, the divisor precision and the configured minimum precision as result precision, andRoundingMode.HALF_UP
as rounding mode.protected int
getDivisionPrecision(BigDecimal dividend, BigDecimal divisor)
protected MathContext
getMathContext(int precision)
-
-
-
Field Detail
-
PROPERTY_MINIMUM_PRECISION
public static final String PROPERTY_MINIMUM_PRECISION
An integer property that provides the minimum precision to be used for division operations.The property can only be set globally. The default value is 16.
- See Also:
- Constant Field Values
-
-
Method Detail
-
divide
public BigDecimal divide(BigDecimal dividend, BigDecimal divisor)
Divides the values using the biggest of the dividend precision, the divisor precision and the configured minimum precision as result precision, andRoundingMode.HALF_UP
as rounding mode.- Specified by:
divide
in interfaceBigDecimalHandler
- Parameters:
dividend
- the dividenddivisor
- the divisor- Returns:
- the division result, rounded according to the rules of the specific implementation
- See Also:
PROPERTY_MINIMUM_PRECISION
-
getDivisionPrecision
protected int getDivisionPrecision(BigDecimal dividend, BigDecimal divisor)
-
getMathContext
protected MathContext getMathContext(int precision)
-
-