# Uses of Class
java.math.BigDecimal

Packages that use BigDecimal
Package | Description
--- | ---
java.math | Provides classes for performing arbitrary-precision integer arithmetic (`BigInteger`) and arbitrary-precision decimal arithmetic (`BigDecimal`).
java.sql | Provides the API for accessing and processing data stored in a data source (usually a relational database) using the Java™ programming language.
java.util | Contains the collections framework, some internationalization support classes, a service loader, properties, random number generation, string parsing and scanning classes, base64 encoding and decoding, a bit array, and several miscellaneous utility classes.
javax.management.openmbean | Provides the open data types and Open MBean descriptor classes.
javax.sql | Provides the API for server side data source access and processing from the Java™ programming language.
javax.sql.rowset | Standard interfaces and base classes for JDBC `RowSet` implementations.
javax.sql.rowset.serial | Provides utility classes to allow serializable mappings between SQL types and data types in the Java programming language.
javax.xml.datatype | Defines XML/Java Type Mappings.

## Uses of BigDecimal in java.math

Fields in java.math declared as BigDecimal
Modifier and Type | Field | Description
--- | --- | ---
`static BigDecimal` | BigDecimal.`ONE` | The value 1, with a scale of 0.
`static BigDecimal` | BigDecimal.`TEN` | The value 10, with a scale of 0.
`static BigDecimal` | BigDecimal.`ZERO` | The value 0, with a scale of 0.

Methods in java.math that return BigDecimal
Modifier and Type | Method | Description
--- | --- | ---
`BigDecimal` | BigDecimal.`abs()` | Returns a `BigDecimal` whose value is the absolute value of this `BigDecimal`, and whose scale is `this.scale()`.
`BigDecimal` | BigDecimal.`abs​(MathContext mc)` | Returns a `BigDecimal` whose value is the absolute value of this `BigDecimal`, with rounding according to the context settings.
`BigDecimal` | BigDecimal.`add​(BigDecimal augend)` | Returns a `BigDecimal` whose value is `(this + augend)`, and whose scale is `max(this.scale(), augend.scale())`.
`BigDecimal` | BigDecimal.`add​(BigDecimal augend, MathContext mc)` | Returns a `BigDecimal` whose value is `(this + augend)`, with rounding according to the context settings.
`BigDecimal` | BigDecimal.`divide​(BigDecimal divisor)` | Returns a `BigDecimal` whose value is `(this / divisor)`, and whose preferred scale is `(this.scale() - divisor.scale())`; if the exact quotient cannot be represented (because it has a non-terminating decimal expansion) an `ArithmeticException` is thrown.
`BigDecimal` | BigDecimal.`divide​(BigDecimal divisor, int roundingMode)` | Deprecated. The method `divide(BigDecimal, RoundingMode)` should be used in preference to this legacy method.
`BigDecimal` | BigDecimal.`divide​(BigDecimal divisor, int scale, int roundingMode)` | Deprecated. The method `divide(BigDecimal, int, RoundingMode)` should be used in preference to this legacy method.
`BigDecimal` | BigDecimal.`divide​(BigDecimal divisor, int scale, RoundingMode roundingMode)` | Returns a `BigDecimal` whose value is `(this / divisor)`, and whose scale is as specified.
`BigDecimal` | BigDecimal.`divide​(BigDecimal divisor, MathContext mc)` | Returns a `BigDecimal` whose value is `(this / divisor)`, with rounding according to the context settings.
`BigDecimal` | BigDecimal.`divide​(BigDecimal divisor, RoundingMode roundingMode)` | Returns a `BigDecimal` whose value is `(this / divisor)`, and whose scale is `this.scale()`.
`BigDecimal[]` | BigDecimal.`divideAndRemainder​(BigDecimal divisor)` | Returns a two-element `BigDecimal` array containing the result of `divideToIntegralValue` followed by the result of `remainder` on the two operands.
`BigDecimal[]` | BigDecimal.`divideAndRemainder​(BigDecimal divisor, MathContext mc)` | Returns a two-element `BigDecimal` array containing the result of `divideToIntegralValue` followed by the result of `remainder` on the two operands calculated with rounding according to the context settings.
`BigDecimal` | BigDecimal.`divideToIntegralValue​(BigDecimal divisor)` | Returns a `BigDecimal` whose value is the integer part of the quotient `(this / divisor)` rounded down.
`BigDecimal` | BigDecimal.`divideToIntegralValue​(BigDecimal divisor, MathContext mc)` | Returns a `BigDecimal` whose value is the integer part of `(this / divisor)`.
`BigDecimal` | BigDecimal.`max​(BigDecimal val)` | Returns the maximum of this `BigDecimal` and `val`.
`BigDecimal` | BigDecimal.`min​(BigDecimal val)` | Returns the minimum of this `BigDecimal` and `val`.
`BigDecimal` | BigDecimal.`movePointLeft​(int n)` | Returns a `BigDecimal` which is equivalent to this one with the decimal point moved `n` places to the left.
`BigDecimal` | BigDecimal.`movePointRight​(int n)` | Returns a `BigDecimal` which is equivalent to this one with the decimal point moved `n` places to the right.
`BigDecimal` | BigDecimal.`multiply​(BigDecimal multiplicand)` | Returns a `BigDecimal` whose value is `(this × multiplicand)`, and whose scale is `(this.scale() + multiplicand.scale())`.
`BigDecimal` | BigDecimal.`multiply​(BigDecimal multiplicand, MathContext mc)` | Returns a `BigDecimal` whose value is `(this × multiplicand)`, with rounding according to the context settings.
`BigDecimal` | BigDecimal.`negate()` | Returns a `BigDecimal` whose value is `(-this)`, and whose scale is `this.scale()`.
`BigDecimal` | BigDecimal.`negate​(MathContext mc)` | Returns a `BigDecimal` whose value is `(-this)`, with rounding according to the context settings.
`BigDecimal` | BigDecimal.`plus()` | Returns a `BigDecimal` whose value is `(+this)`, and whose scale is `this.scale()`.
`BigDecimal` | BigDecimal.`plus​(MathContext mc)` | Returns a `BigDecimal` whose value is `(+this)`, with rounding according to the context settings.
`BigDecimal` | BigDecimal.`pow​(int n)` | Returns a `BigDecimal` whose value is `(thisn)`, The power is computed exactly, to unlimited precision.
`BigDecimal` | BigDecimal.`pow​(int n, MathContext mc)` | Returns a `BigDecimal` whose value is `(thisn)`.
`BigDecimal` | BigDecimal.`remainder​(BigDecimal divisor)` | Returns a `BigDecimal` whose value is `(this % divisor)`.
`BigDecimal` | BigDecimal.`remainder​(BigDecimal divisor, MathContext mc)` | Returns a `BigDecimal` whose value is `(this % divisor)`, with rounding according to the context settings.
`BigDecimal` | BigDecimal.`round​(MathContext mc)` | Returns a `BigDecimal` rounded according to the `MathContext` settings.
`BigDecimal` | BigDecimal.`scaleByPowerOfTen​(int n)` | Returns a BigDecimal whose numerical value is equal to (`this` * 10n).
`BigDecimal` | BigDecimal.`setScale​(int newScale)` | Returns a `BigDecimal` whose scale is the specified value, and whose value is numerically equal to this `BigDecimal`'s.
`BigDecimal` | BigDecimal.`setScale​(int newScale, int roundingMode)` | Deprecated. The method `setScale(int, RoundingMode)` should be used in preference to this legacy method.
`BigDecimal` | BigDecimal.`setScale​(int newScale, RoundingMode roundingMode)` | Returns a `BigDecimal` whose scale is the specified value, and whose unscaled value is determined by multiplying or dividing this `BigDecimal`'s unscaled value by the appropriate power of ten to maintain its overall value.
`BigDecimal` | BigDecimal.`sqrt​(MathContext mc)` | Returns an approximation to the square root of `this` with rounding according to the context settings.
`BigDecimal` | BigDecimal.`stripTrailingZeros()` | Returns a `BigDecimal` which is numerically equal to this one but with any trailing zeros removed from the representation.
`BigDecimal` | BigDecimal.`subtract​(BigDecimal subtrahend)` | Returns a `BigDecimal` whose value is `(this - subtrahend)`, and whose scale is `max(this.scale(), subtrahend.scale())`.
`BigDecimal` | BigDecimal.`subtract​(BigDecimal subtrahend, MathContext mc)` | Returns a `BigDecimal` whose value is `(this - subtrahend)`, with rounding according to the context settings.
`BigDecimal` | BigDecimal.`ulp()` | Returns the size of an ulp, a unit in the last place, of this `BigDecimal`.
`static BigDecimal` | BigDecimal.`valueOf​(double val)` | Translates a `double` into a `BigDecimal`, using the `double`'s canonical string representation provided by the `Double.toString(double)` method.
`static BigDecimal` | BigDecimal.`valueOf​(long val)` | Translates a `long` value into a `BigDecimal` with a scale of zero.
`static BigDecimal` | BigDecimal.`valueOf​(long unscaledVal, int scale)` | Translates a `long` unscaled value and an `int` scale into a `BigDecimal`.

Methods in java.math with parameters of type BigDecimal
Modifier and Type | Method | Description
--- | --- | ---
`BigDecimal` | BigDecimal.`add​(BigDecimal augend)` | Returns a `BigDecimal` whose value is `(this + augend)`, and whose scale is `max(this.scale(), augend.scale())`.
`BigDecimal` | BigDecimal.`add​(BigDecimal augend, MathContext mc)` | Returns a `BigDecimal` whose value is `(this + augend)`, with rounding according to the context settings.
`int` | BigDecimal.`compareTo​(BigDecimal val)` | Compares this `BigDecimal` with the specified `BigDecimal`.
`BigDecimal` | BigDecimal.`divide​(BigDecimal divisor)` | Returns a `BigDecimal` whose value is `(this / divisor)`, and whose preferred scale is `(this.scale() - divisor.scale())`; if the exact quotient cannot be represented (because it has a non-terminating decimal expansion) an `ArithmeticException` is thrown.
`BigDecimal` | BigDecimal.`divide​(BigDecimal divisor, int roundingMode)` | Deprecated. The method `divide(BigDecimal, RoundingMode)` should be used in preference to this legacy method.
`BigDecimal` | BigDecimal.`divide​(BigDecimal divisor, int scale, int roundingMode)` | Deprecated. The method `divide(BigDecimal, int, RoundingMode)` should be used in preference to this legacy method.
`BigDecimal` | BigDecimal.`divide​(BigDecimal divisor, int scale, RoundingMode roundingMode)` | Returns a `BigDecimal` whose value is `(this / divisor)`, and whose scale is as specified.
`BigDecimal` | BigDecimal.`divide​(BigDecimal divisor, MathContext mc)` | Returns a `BigDecimal` whose value is `(this / divisor)`, with rounding according to the context settings.
`BigDecimal` | BigDecimal.`divide​(BigDecimal divisor, RoundingMode roundingMode)` | Returns a `BigDecimal` whose value is `(this / divisor)`, and whose scale is `this.scale()`.
`BigDecimal[]` | BigDecimal.`divideAndRemainder​(BigDecimal divisor)` | Returns a two-element `BigDecimal` array containing the result of `divideToIntegralValue` followed by the result of `remainder` on the two operands.
`BigDecimal[]` | BigDecimal.`divideAndRemainder​(BigDecimal divisor, MathContext mc)` | Returns a two-element `BigDecimal` array containing the result of `divideToIntegralValue` followed by the result of `remainder` on the two operands calculated with rounding according to the context settings.
`BigDecimal` | BigDecimal.`divideToIntegralValue​(BigDecimal divisor)` | Returns a `BigDecimal` whose value is the integer part of the quotient `(this / divisor)` rounded down.
`BigDecimal` | BigDecimal.`divideToIntegralValue​(BigDecimal divisor, MathContext mc)` | Returns a `BigDecimal` whose value is the integer part of `(this / divisor)`.
`BigDecimal` | BigDecimal.`max​(BigDecimal val)` | Returns the maximum of this `BigDecimal` and `val`.
`BigDecimal` | BigDecimal.`min​(BigDecimal val)` | Returns the minimum of this `BigDecimal` and `val`.
`BigDecimal` | BigDecimal.`multiply​(BigDecimal multiplicand)` | Returns a `BigDecimal` whose value is `(this × multiplicand)`, and whose scale is `(this.scale() + multiplicand.scale())`.
`BigDecimal` | BigDecimal.`multiply​(BigDecimal multiplicand, MathContext mc)` | Returns a `BigDecimal` whose value is `(this × multiplicand)`, with rounding according to the context settings.
`BigDecimal` | BigDecimal.`remainder​(BigDecimal divisor)` | Returns a `BigDecimal` whose value is `(this % divisor)`.
`BigDecimal` | BigDecimal.`remainder​(BigDecimal divisor, MathContext mc)` | Returns a `BigDecimal` whose value is `(this % divisor)`, with rounding according to the context settings.
`BigDecimal` | BigDecimal.`subtract​(BigDecimal subtrahend)` | Returns a `BigDecimal` whose value is `(this - subtrahend)`, and whose scale is `max(this.scale(), subtrahend.scale())`.
`BigDecimal` | BigDecimal.`subtract​(BigDecimal subtrahend, MathContext mc)` | Returns a `BigDecimal` whose value is `(this - subtrahend)`, with rounding according to the context settings.

## Uses of BigDecimal in java.sql

Methods in java.sql that return BigDecimal
Modifier and Type | Method | Description
--- | --- | ---
`BigDecimal` | CallableStatement.`getBigDecimal​(int parameterIndex)` | Retrieves the value of the designated JDBC `NUMERIC` parameter as a `java.math.BigDecimal` object with as many digits to the right of the decimal point as the value contains.
`BigDecimal` | CallableStatement.`getBigDecimal​(int parameterIndex, int scale)` | Deprecated. use `getBigDecimal(int parameterIndex)` or `getBigDecimal(String parameterName)`
`BigDecimal` | CallableStatement.`getBigDecimal​(String parameterName)` | Retrieves the value of a JDBC `NUMERIC` parameter as a `java.math.BigDecimal` object with as many digits to the right of the decimal point as the value contains.
`BigDecimal` | ResultSet.`getBigDecimal​(int columnIndex)` | Retrieves the value of the designated column in the current row of this `ResultSet` object as a `java.math.BigDecimal` with full precision.
`BigDecimal` | ResultSet.`getBigDecimal​(int columnIndex, int scale)` | Deprecated. Use `getBigDecimal(int columnIndex)` or `getBigDecimal(String columnLabel)`
`BigDecimal` | ResultSet.`getBigDecimal​(String columnLabel)` | Retrieves the value of the designated column in the current row of this `ResultSet` object as a `java.math.BigDecimal` with full precision.
`BigDecimal` | ResultSet.`getBigDecimal​(String columnLabel, int scale)` | Deprecated. Use `getBigDecimal(int columnIndex)` or `getBigDecimal(String columnLabel)`
`BigDecimal` | SQLInput.`readBigDecimal()` | Reads the next attribute in the stream and returns it as a `java.math.BigDecimal` object in the Java programming language.

Methods in java.sql with parameters of type BigDecimal
Modifier and Type | Method | Description
--- | --- | ---
`void` | CallableStatement.`setBigDecimal​(String parameterName, BigDecimal x)` | Sets the designated parameter to the given `java.math.BigDecimal` value.
`void` | PreparedStatement.`setBigDecimal​(int parameterIndex, BigDecimal x)` | Sets the designated parameter to the given `java.math.BigDecimal` value.
`void` | ResultSet.`updateBigDecimal​(int columnIndex, BigDecimal x)` | Updates the designated column with a `java.math.BigDecimal` value.
`void` | ResultSet.`updateBigDecimal​(String columnLabel, BigDecimal x)` | Updates the designated column with a `java.sql.BigDecimal` value.
`void` | SQLOutput.`writeBigDecimal​(BigDecimal x)` | Writes the next attribute to the stream as a java.math.BigDecimal object.

## Uses of BigDecimal in java.util

Methods in java.util that return BigDecimal
Modifier and Type | Method | Description
--- | --- | ---
`BigDecimal` | Scanner.`nextBigDecimal()` | Scans the next token of the input as a `BigDecimal`.

## Uses of BigDecimal in javax.management.openmbean

Fields in javax.management.openmbean with type parameters of type BigDecimal
Modifier and Type | Field | Description
--- | --- | ---
`static SimpleType<BigDecimal>` | SimpleType.`BIGDECIMAL` | The `SimpleType` instance describing values whose Java class name is `java.math.BigDecimal`.

## Uses of BigDecimal in javax.sql

Methods in javax.sql with parameters of type BigDecimal
Modifier and Type | Method | Description
--- | --- | ---
`void` | RowSet.`setBigDecimal​(int parameterIndex, BigDecimal x)` | Sets the designated parameter in this `RowSet` object's command to the given `java.math.BigDecimal` value.
`void` | RowSet.`setBigDecimal​(String parameterName, BigDecimal x)` | Sets the designated parameter to the given `java.math.BigDecimal` value.

## Uses of BigDecimal in javax.sql.rowset

Methods in javax.sql.rowset with parameters of type BigDecimal
Modifier and Type | Method | Description
--- | --- | ---
`void` | BaseRowSet.`setBigDecimal​(int parameterIndex, BigDecimal x)` | Sets the designated parameter to the given `java.lang.BigDecimal` value.
`void` | BaseRowSet.`setBigDecimal​(String parameterName, BigDecimal x)` | Sets the designated parameter to the given `java.math.BigDecimal` value.

## Uses of BigDecimal in javax.sql.rowset.serial

Methods in javax.sql.rowset.serial that return BigDecimal
Modifier and Type | Method | Description
--- | --- | ---
`BigDecimal` | SQLInputImpl.`readBigDecimal()` | Retrieves the next attribute in this `SQLInputImpl` object as a `java.math.BigDecimal`.

Methods in javax.sql.rowset.serial with parameters of type BigDecimal
Modifier and Type | Method | Description
--- | --- | ---
`void` | SQLOutputImpl.`writeBigDecimal​(BigDecimal x)` | Writes a `java.math.BigDecimal` object in the Java programming language to this `SQLOutputImpl` object.

## Uses of BigDecimal in javax.xml.datatype

Methods in javax.xml.datatype that return BigDecimal
Modifier and Type | Method | Description
--- | --- | ---
`abstract BigDecimal` | XMLGregorianCalendar.`getFractionalSecond()` | Returns fractional seconds.

Methods in javax.xml.datatype with parameters of type BigDecimal
Modifier and Type | Method | Description
--- | --- | ---
`abstract Duration` | Duration.`multiply​(BigDecimal factor)` | Computes a new duration whose value is `factor` times longer than the value of this duration.
`abstract Duration` | DatatypeFactory.`newDuration​(boolean isPositive, BigInteger years, BigInteger months, BigInteger days, BigInteger hours, BigInteger minutes, BigDecimal seconds)` | Obtain a new instance of a `Duration` specifying the `Duration` as isPositive, years, months, days, hours, minutes, seconds.
`abstract XMLGregorianCalendar` | DatatypeFactory.`newXMLGregorianCalendar​(BigInteger year, int month, int day, int hour, int minute, int second, BigDecimal fractionalSecond, int timezone)` | Constructor allowing for complete value spaces allowed by W3C XML Schema 1.0 recommendation for xsd:dateTime and related builtin datatypes.
`XMLGregorianCalendar` | DatatypeFactory.`newXMLGregorianCalendarTime​(int hours, int minutes, int seconds, BigDecimal fractionalSecond, int timezone)` | Create a Java instance of XML Schema builtin datatype time.
`abstract void` | XMLGregorianCalendar.`setFractionalSecond​(BigDecimal fractional)` | Set fractional seconds.
`void` | XMLGregorianCalendar.`setTime​(int hour, int minute, int second, BigDecimal fractional)` | Set time as one unit, including the optional infinite precision fractional seconds.