public final class BigDecimal extends java.lang.Object implements GcdRingElem<BigDecimal>, RingFactory<BigDecimal>
BigDecimal,
Serialized Form| Modifier and Type | Field and Description |
|---|---|
java.math.MathContext |
context |
static java.math.MathContext |
DEFAULT_CONTEXT |
static int |
DEFAULT_PRECISION |
static boolean |
EXACT_EQUAL
If true, then use equals from java.math.BigDecimal, else use hacked
approximate compareTo().
|
static BigDecimal |
ONE
The constant 1.
|
java.math.BigDecimal |
val
The data structure.
|
static BigDecimal |
ZERO
The constant 0.
|
| Constructor and Description |
|---|
BigDecimal()
Constructor for BigDecimal without parameters.
|
BigDecimal(java.math.BigDecimal a)
Constructor for BigDecimal from math.BigDecimal.
|
BigDecimal(java.math.BigDecimal a,
java.math.MathContext mc)
Constructor for BigDecimal from math.BigDecimal.
|
BigDecimal(java.math.BigInteger a)
Constructor for BigDecimal from java.math.BigInteger.
|
BigDecimal(java.math.BigInteger a,
java.math.MathContext mc)
Constructor for BigDecimal from java.math.BigInteger.
|
BigDecimal(BigRational a)
Constructor for BigDecimal from BigRational.
|
BigDecimal(BigRational a,
java.math.MathContext mc)
Constructor for BigDecimal from BigRational.
|
BigDecimal(double a)
Constructor for BigDecimal from double.
|
BigDecimal(double a,
java.math.MathContext mc)
Constructor for BigDecimal from double and a context.
|
BigDecimal(long a)
Constructor for BigDecimal from long.
|
BigDecimal(long a,
java.math.MathContext mc)
Constructor for BigDecimal from long and a context.
|
BigDecimal(java.lang.String s)
Constructor for BigDecimal from String.
|
BigDecimal(java.lang.String s,
java.math.MathContext mc)
Constructor for BigDecimal from String.
|
| Modifier and Type | Method and Description |
|---|---|
BigDecimal |
abs()
Absolute value of this.
|
long |
bitLength()
Returns the number of bits in the representation of this BigDecimal,
including a sign bit.
|
java.math.BigInteger |
characteristic()
Characteristic of this ring.
|
int |
compareTo(BigDecimal b)
Compare to BigDecimal b.
|
int |
compareToAbsolute(BigDecimal b)
Compare absolute to BigDecimal b.
|
int |
compareToRelative(BigDecimal b)
Compare to relative BigDecimal b.
|
BigDecimal |
copy()
Clone this.
|
BigDecimal |
copy(BigDecimal c)
Copy BigDecimal element c.
|
BigDecimal |
divide(BigDecimal S)
BigDecimal divide.
|
double |
doubleValue()
Get this decimal as a double.
|
BigDecimal[] |
egcd(BigDecimal S)
BigDecimal extended greatest common divisor.
|
boolean |
equals(java.lang.Object b)
Comparison with any other object.
|
BigDecimal |
factory()
Get the corresponding element factory.
|
BigDecimal |
fromInteger(java.math.BigInteger a)
Get a BigDecimal element from a math.BigDecimal.
|
BigDecimal |
fromInteger(long a)
Get a BigDecimal element from long.
|
BigDecimal |
gcd(BigDecimal S)
BigDecimal greatest common divisor.
|
java.util.List<BigDecimal> |
generators()
Get a list of the generating elements.
|
BigDecimal |
getONE()
Get the one element.
|
BigDecimal |
getZERO()
Get the zero element.
|
int |
hashCode()
Hash code for this BigDecimal.
|
BigDecimal |
inverse()
Integer inverse.
|
boolean |
isAssociative()
Query if this ring is associative.
|
boolean |
isCommutative()
Query if this ring is commutative.
|
boolean |
isField()
Query if this ring is a field.
|
boolean |
isFinite()
Is this structure finite or infinite.
|
boolean |
isONE()
Is BigDecimal number one.
|
boolean |
isUnit()
Is BigDecimal number unit.
|
boolean |
isZERO()
Is BigDecimal number zero.
|
BigDecimal |
multiply(BigDecimal S)
BigDecimal multiply.
|
BigDecimal |
negate()
Negate this.
|
BigDecimal |
parse(java.io.Reader r)
BigDecimal parse from Reader.
|
BigDecimal |
parse(java.lang.String s)
BigDecimal parse from String.
|
BigDecimal[] |
quotientRemainder(BigDecimal S)
BigDecimal compute quotient and remainder.
|
BigDecimal |
random(int n)
BigDecimal random.
|
BigDecimal |
random(int n,
int e)
BigDecimal random.
|
BigDecimal |
random(int n,
int e,
java.util.Random rnd)
BigDecimal random.
|
BigDecimal |
random(int n,
java.util.Random rnd)
BigDecimal random.
|
BigDecimal |
remainder(BigDecimal S)
BigDecimal remainder.
|
int |
signum()
signum.
|
BigDecimal |
subtract(BigDecimal S)
BigDecimal subtract.
|
BigDecimal |
sum(BigDecimal S)
BigDecimal summation.
|
java.lang.String |
toScript()
Get a scripting compatible string representation.
|
java.lang.String |
toScriptFactory()
Get a scripting compatible string representation of the factory.
|
java.lang.String |
toString()
Get the String representation.
|
static BigDecimal |
valueOf(java.math.BigDecimal a)
Get a BigDecimal element from a math.BigDecimal.
|
static BigDecimal |
valueOf(long a)
Get a BigDecimal element from long.
|
clone, finalize, getClass, notify, notifyAll, wait, wait, waitleftDivide, leftRemainder, power, rightDivide, rightRemainder, twosidedDivide, twosidedRemainderpublic final java.math.BigDecimal val
public static final java.math.MathContext DEFAULT_CONTEXT
public static final int DEFAULT_PRECISION
public final java.math.MathContext context
public static final boolean EXACT_EQUAL
public static final BigDecimal ZERO
public static final BigDecimal ONE
public BigDecimal(java.math.BigDecimal a)
a - java.math.BigDecimal.public BigDecimal(java.math.BigDecimal a, java.math.MathContext mc)
a - java.math.BigDecimal.mc - MathContext.public BigDecimal(long a)
a - long.public BigDecimal(long a, java.math.MathContext mc)
a - long.mc - MathContext.public BigDecimal(double a)
a - double.public BigDecimal(double a, java.math.MathContext mc)
a - double.mc - MathContext.public BigDecimal(java.math.BigInteger a)
a - java.math.BigInteger.public BigDecimal(java.math.BigInteger a, java.math.MathContext mc)
a - java.math.BigInteger.mc - MathContext.public BigDecimal(BigRational a)
a - edu.jas.arith.BigRational.public BigDecimal(BigRational a, java.math.MathContext mc)
a - edu.jas.arith.BigRational.mc - MathContext.public BigDecimal(java.lang.String s)
s - String.public BigDecimal(java.lang.String s, java.math.MathContext mc)
s - String.mc - MathContext.public BigDecimal()
public BigDecimal factory()
factory in interface Element<BigDecimal>Element.factory()public java.util.List<BigDecimal> generators()
generators in interface ElemFactory<BigDecimal>ElemFactory.generators()public boolean isFinite()
isFinite in interface ElemFactory<BigDecimal>Note: is actually
finite but returns false.public BigDecimal copy()
copy in interface Element<BigDecimal>Object.clone()public BigDecimal copy(BigDecimal c)
copy in interface ElemFactory<BigDecimal>c - BigDecimal.public BigDecimal getZERO()
getZERO in interface AbelianGroupFactory<BigDecimal>public BigDecimal getONE()
getONE in interface MonoidFactory<BigDecimal>public boolean isCommutative()
isCommutative in interface MonoidFactory<BigDecimal>public boolean isAssociative()
isAssociative in interface MonoidFactory<BigDecimal>public boolean isField()
isField in interface RingFactory<BigDecimal>public java.math.BigInteger characteristic()
characteristic in interface RingFactory<BigDecimal>public BigDecimal fromInteger(java.math.BigInteger a)
fromInteger in interface ElemFactory<BigDecimal>a - math.BigDecimal.public static BigDecimal valueOf(java.math.BigDecimal a)
a - math.BigDecimal.public BigDecimal fromInteger(long a)
fromInteger in interface ElemFactory<BigDecimal>a - long.public static BigDecimal valueOf(long a)
a - long.public boolean isZERO()
isZERO in interface AbelianGroupElem<BigDecimal>AbelianGroupElem.isZERO()public boolean isONE()
isONE in interface MonoidElem<BigDecimal>MonoidElem.isONE()public boolean isUnit()
isUnit in interface MonoidElem<BigDecimal>MonoidElem.isUnit()public java.lang.String toString()
toString in class java.lang.ObjectObject.toString()public double doubleValue()
Number.doubleValue()public java.lang.String toScript()
toScript in interface Element<BigDecimal>toScript in interface ElemFactory<BigDecimal>Element.toScript()public java.lang.String toScriptFactory()
toScriptFactory in interface Element<BigDecimal>Element.toScriptFactory()public int compareTo(BigDecimal b)
compareTo in interface Element<BigDecimal>compareTo in interface java.lang.Comparable<BigDecimal>b - BigDecimal.public int compareToAbsolute(BigDecimal b)
b - BigDecimal.public int compareToRelative(BigDecimal b)
b - BigDecimal.public boolean equals(java.lang.Object b)
equals in interface Element<BigDecimal>equals in class java.lang.ObjectObject.equals(java.lang.Object)public int hashCode()
hashCode in interface Element<BigDecimal>hashCode in class java.lang.ObjectObject.hashCode()public BigDecimal abs()
abs in interface AbelianGroupElem<BigDecimal>AbelianGroupElem.abs()public BigDecimal negate()
AbelianGroupElemnegate in interface AbelianGroupElem<BigDecimal>public int signum()
signum in interface AbelianGroupElem<BigDecimal>AbelianGroupElem.signum()public BigDecimal subtract(BigDecimal S)
subtract in interface AbelianGroupElem<BigDecimal>S - BigDecimal.public BigDecimal divide(BigDecimal S)
divide in interface MonoidElem<BigDecimal>S - BigDecimal.public BigDecimal inverse()
inverse in interface MonoidElem<BigDecimal>MonoidElem.inverse()public BigDecimal remainder(BigDecimal S)
remainder in interface MonoidElem<BigDecimal>S - BigDecimal.public BigDecimal[] quotientRemainder(BigDecimal S)
quotientRemainder in interface MonoidElem<BigDecimal>S - BigDecimal.public BigDecimal gcd(BigDecimal S)
gcd in interface RingElem<BigDecimal>S - BigDecimal.public BigDecimal[] egcd(BigDecimal S)
egcd in interface RingElem<BigDecimal>S - BigDecimal.public BigDecimal random(int n)
random in interface ElemFactory<BigDecimal>n - such that 0 ≤ val(r) ≤ (2n-1). 0 ≤ exp(r)
≤ (10-1).public BigDecimal random(int n, java.util.Random rnd)
random in interface ElemFactory<BigDecimal>n - such that 0 ≤ val(r) ≤ (2n-1). 0 ≤ exp(r)
≤ (10-1).rnd - is a source for random bits.public BigDecimal random(int n, int e)
n - such that 0 ≤ val(r) ≤ (2n-1).e - such that 0 ≤ exp(r) ≤ (e-1).public BigDecimal random(int n, int e, java.util.Random rnd)
n - such that 0 ≤ val(r) ≤ (2n-1).e - such that 0 ≤ exp(r) ≤ (e-1).rnd - is a source for random bits.public BigDecimal multiply(BigDecimal S)
multiply in interface MonoidElem<BigDecimal>S - BigDecimal.public BigDecimal sum(BigDecimal S)
sum in interface AbelianGroupElem<BigDecimal>S - BigDecimal.public BigDecimal parse(java.lang.String s)
parse in interface ElemFactory<BigDecimal>s - String.public BigDecimal parse(java.io.Reader r)
parse in interface ElemFactory<BigDecimal>r - Reader.public long bitLength()
val.unscaledValue().bitLength().)