Package org.apache.commons.math3.util
Class BigReal
java.lang.Object
org.apache.commons.math3.util.BigReal
- All Implemented Interfaces:
Serializable,Comparable<BigReal>,FieldElement<BigReal>
public class BigReal
extends Object
implements FieldElement<BigReal>, Comparable<BigReal>, Serializable
Arbitrary precision decimal number.
This class is a simple wrapper around the standard BigDecimal
in order to implement the FieldElement interface.
- Since:
- 2.0
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final BigDecimalUnderlying BigDecimal.static final BigRealA big real representing 1.private RoundingModeRounding mode for divisions.private intBigDecimal scaleprivate static final longSerializable version identifier.static final BigRealA big real representing 0. -
Constructor Summary
ConstructorsConstructorDescriptionBigReal(char[] in) Build an instance from a characters representation.BigReal(char[] in, int offset, int len) Build an instance from a characters representation.BigReal(char[] in, int offset, int len, MathContext mc) Build an instance from a characters representation.BigReal(char[] in, MathContext mc) Build an instance from a characters representation.BigReal(double val) Build an instance from a double.BigReal(double val, MathContext mc) Build an instance from a double.BigReal(int val) Build an instance from an int.BigReal(int val, MathContext mc) Build an instance from an int.BigReal(long val) Build an instance from a long.BigReal(long val, MathContext mc) Build an instance from a long.Build an instance from a String representation.BigReal(String val, MathContext mc) Build an instance from a String representation.BigReal(BigDecimal val) Build an instance from a BigDecimal.BigReal(BigInteger val) Build an instance from a BigInteger.BigReal(BigInteger unscaledVal, int scale) Build an instance from an unscaled BigInteger.BigReal(BigInteger unscaledVal, int scale, MathContext mc) Build an instance from an unscaled BigInteger.BigReal(BigInteger val, MathContext mc) Build an instance from a BigInteger. -
Method Summary
Modifier and TypeMethodDescriptionCompute this + a.Get the BigDecimal value corresponding to the instance.intCompute this ÷ a.doubleGet the double value corresponding to the instance.booleangetField()Get theFieldto which the instance belongs.Gets the rounding mode for division operations The default isRoundingMode.HALF_UPintgetScale()Sets the scale for division operations.inthashCode()multiply(int n) Compute n × this.Compute this × a.negate()Returns the additive inverse ofthiselement.Returns the multiplicative inverse ofthiselement.voidsetRoundingMode(RoundingMode roundingMode) Sets the rounding mode for decimal divisions.voidsetScale(int scale) Sets the scale for division operations.Compute this - a.
-
Field Details
-
ZERO
A big real representing 0. -
ONE
A big real representing 1. -
serialVersionUID
private static final long serialVersionUIDSerializable version identifier.- See Also:
-
d
Underlying BigDecimal. -
roundingMode
Rounding mode for divisions. -
scale
private int scaleBigDecimal scale
-
-
Constructor Details
-
BigReal
Build an instance from a BigDecimal.- Parameters:
val- value of the instance
-
BigReal
Build an instance from a BigInteger.- Parameters:
val- value of the instance
-
BigReal
Build an instance from an unscaled BigInteger.- Parameters:
unscaledVal- unscaled valuescale- scale to use
-
BigReal
Build an instance from an unscaled BigInteger.- Parameters:
unscaledVal- unscaled valuescale- scale to usemc- to used
-
BigReal
Build an instance from a BigInteger.- Parameters:
val- value of the instancemc- context to use
-
BigReal
public BigReal(char[] in) Build an instance from a characters representation.- Parameters:
in- character representation of the value
-
BigReal
public BigReal(char[] in, int offset, int len) Build an instance from a characters representation.- Parameters:
in- character representation of the valueoffset- offset of the first character to analyzelen- length of the array slice to analyze
-
BigReal
Build an instance from a characters representation.- Parameters:
in- character representation of the valueoffset- offset of the first character to analyzelen- length of the array slice to analyzemc- context to use
-
BigReal
Build an instance from a characters representation.- Parameters:
in- character representation of the valuemc- context to use
-
BigReal
public BigReal(double val) Build an instance from a double.- Parameters:
val- value of the instance
-
BigReal
Build an instance from a double.- Parameters:
val- value of the instancemc- context to use
-
BigReal
public BigReal(int val) Build an instance from an int.- Parameters:
val- value of the instance
-
BigReal
Build an instance from an int.- Parameters:
val- value of the instancemc- context to use
-
BigReal
public BigReal(long val) Build an instance from a long.- Parameters:
val- value of the instance
-
BigReal
Build an instance from a long.- Parameters:
val- value of the instancemc- context to use
-
BigReal
Build an instance from a String representation.- Parameters:
val- character representation of the value
-
BigReal
Build an instance from a String representation.- Parameters:
val- character representation of the valuemc- context to use
-
-
Method Details
-
getRoundingMode
Gets the rounding mode for division operations The default isRoundingMode.HALF_UP- Returns:
- the rounding mode.
- Since:
- 2.1
-
setRoundingMode
Sets the rounding mode for decimal divisions.- Parameters:
roundingMode- rounding mode for decimal divisions- Since:
- 2.1
-
getScale
public int getScale()Sets the scale for division operations. The default is 64- Returns:
- the scale
- Since:
- 2.1
-
setScale
public void setScale(int scale) Sets the scale for division operations.- Parameters:
scale- scale for division operations- Since:
- 2.1
-
add
Compute this + a.- Specified by:
addin interfaceFieldElement<BigReal>- Parameters:
a- element to add- Returns:
- a new element representing this + a
-
subtract
Compute this - a.- Specified by:
subtractin interfaceFieldElement<BigReal>- Parameters:
a- element to subtract- Returns:
- a new element representing this - a
-
negate
Returns the additive inverse ofthiselement.- Specified by:
negatein interfaceFieldElement<BigReal>- Returns:
- the opposite of
this.
-
divide
Compute this ÷ a.- Specified by:
dividein interfaceFieldElement<BigReal>- Parameters:
a- element to divide by- Returns:
- a new element representing this ÷ a
- Throws:
MathArithmeticException- ifais zero
-
reciprocal
Returns the multiplicative inverse ofthiselement.- Specified by:
reciprocalin interfaceFieldElement<BigReal>- Returns:
- the inverse of
this. - Throws:
MathArithmeticException- ifthisis zero
-
multiply
Compute this × a.- Specified by:
multiplyin interfaceFieldElement<BigReal>- Parameters:
a- element to multiply- Returns:
- a new element representing this × a
-
multiply
Compute n × this. Multiplication by an integer number is defined as the following sumn × this = ∑i=1n this. - Specified by:
multiplyin interfaceFieldElement<BigReal>- Parameters:
n- Number of timesthismust be added to itself.- Returns:
- A new element representing n × this.
-
compareTo
- Specified by:
compareToin interfaceComparable<BigReal>
-
doubleValue
public double doubleValue()Get the double value corresponding to the instance.- Returns:
- double value corresponding to the instance
-
bigDecimalValue
Get the BigDecimal value corresponding to the instance.- Returns:
- BigDecimal value corresponding to the instance
-
equals
-
hashCode
public int hashCode() -
getField
Get theFieldto which the instance belongs.- Specified by:
getFieldin interfaceFieldElement<BigReal>- Returns:
Fieldto which the instance belongs
-