Package org.apache.commons.lang3.mutable
Class MutableDouble
java.lang.Object
java.lang.Number
org.apache.commons.lang3.mutable.MutableDouble
- All Implemented Interfaces:
Serializable
,Comparable<MutableDouble>
,Mutable<Number>
A mutable
double
wrapper.
Note that as MutableDouble does not extend Double, it is not treated by String.format as a Double parameter.
- Since:
- 2.1
- See Also:
-
Constructor Summary
ConstructorDescriptionConstructs a new MutableDouble with the default value of zero.MutableDouble
(double value) Constructs a new MutableDouble with the specified value.MutableDouble
(Number value) Constructs a new MutableDouble with the specified value.MutableDouble
(String value) Constructs a new MutableDouble parsing the given string. -
Method Summary
Modifier and TypeMethodDescriptionvoid
add
(double operand) Adds a value to the value of this instance.void
Adds a value to the value of this instance.double
addAndGet
(double operand) Increments this instance's value byoperand
; this method returns the value associated with the instance immediately after the addition operation.double
Increments this instance's value byoperand
; this method returns the value associated with the instance immediately after the addition operation.int
compareTo
(MutableDouble other) Compares this mutable to another in ascending order.void
Decrements the value.double
Decrements this instance's value by 1; this method returns the value associated with the instance immediately after the decrement operation.double
Returns the value of this MutableDouble as a double.boolean
Compares this object against the specified object.float
Returns the value of this MutableDouble as a float.double
getAndAdd
(double operand) Increments this instance's value byoperand
; this method returns the value associated with the instance immediately prior to the addition operation.double
Increments this instance's value byoperand
; this method returns the value associated with the instance immediately prior to the addition operation.double
Decrements this instance's value by 1; this method returns the value associated with the instance immediately prior to the decrement operation.double
Increments this instance's value by 1; this method returns the value associated with the instance immediately prior to the increment operation.getValue()
Gets the value as a Double instance.int
hashCode()
Returns a suitable hash code for this mutable.void
Increments the value.double
Increments this instance's value by 1; this method returns the value associated with the instance immediately after the increment operation.int
intValue()
Returns the value of this MutableDouble as an int.boolean
Checks whether the double value is infinite.boolean
isNaN()
Checks whether the double value is the special NaN value.long
Returns the value of this MutableDouble as a long.void
setValue
(double value) Sets the value.void
Sets the value from any Number instance.void
subtract
(double operand) Subtracts a value from the value of this instance.void
Subtracts a value from the value of this instance.toDouble()
Gets this mutable as an instance of Double.toString()
Returns the String value of this mutable.Methods inherited from class java.lang.Number
byteValue, shortValue
-
Constructor Details
-
MutableDouble
public MutableDouble()Constructs a new MutableDouble with the default value of zero. -
MutableDouble
Constructs a new MutableDouble with the specified value.- Parameters:
value
- the initial value to store
-
MutableDouble
Constructs a new MutableDouble with the specified value.- Parameters:
value
- the initial value to store, not null- Throws:
NullPointerException
- if the object is null
-
MutableDouble
Constructs a new MutableDouble parsing the given string.- Parameters:
value
- the string to parse, not null- Throws:
NumberFormatException
- if the string cannot be parsed into a double- Since:
- 2.5
-
-
Method Details
-
add
Adds a value to the value of this instance.- Parameters:
operand
- the value to add- Since:
- 2.2
-
add
Adds a value to the value of this instance.- Parameters:
operand
- the value to add, not null- Throws:
NullPointerException
- if the object is null- Since:
- 2.2
-
addAndGet
Increments this instance's value byoperand
; this method returns the value associated with the instance immediately after the addition operation. This method is not thread safe.- Parameters:
operand
- the quantity to add, not null- Returns:
- the value associated with this instance after adding the operand
- Since:
- 3.5
-
addAndGet
Increments this instance's value byoperand
; this method returns the value associated with the instance immediately after the addition operation. This method is not thread safe.- Parameters:
operand
- the quantity to add, not null- Returns:
- the value associated with this instance after adding the operand
- Throws:
NullPointerException
- ifoperand
is null- Since:
- 3.5
-
compareTo
Compares this mutable to another in ascending order.- Specified by:
compareTo
in interfaceComparable<MutableDouble>
- Parameters:
other
- the other mutable to compare to, not null- Returns:
- negative if this is less, zero if equal, positive if greater
-
decrement
Decrements the value.- Since:
- 2.2
-
decrementAndGet
Decrements this instance's value by 1; this method returns the value associated with the instance immediately after the decrement operation. This method is not thread safe.- Returns:
- the value associated with the instance after it is decremented
- Since:
- 3.5
-
doubleValue
Returns the value of this MutableDouble as a double.- Specified by:
doubleValue
in classNumber
- Returns:
- the numeric value represented by this object after conversion to type double.
-
equals
Compares this object against the specified object. The result istrue
if and only if the argument is notnull
and is aDouble
object that represents a double that has the identical bit pattern to the bit pattern of the double represented by this object. For this purpose, twodouble
values are considered to be the same if and only if the methodDouble.doubleToLongBits(double)
returns the same long value when applied to each.Note that in most cases, for two instances of class
Double
,d1
andd2
, the value ofd1.equals(d2)
istrue
if and only ifd1.doubleValue() == d2.doubleValue()
also has the value
true
. However, there are two exceptions:- If
d1
andd2
both representDouble.NaN
, then theequals
method returnstrue
, even thoughDouble.NaN == Double.NaN
has the valuefalse
. - If
d1
represents+0.0
whiled2
represents-0.0
, or vice versa, theequal
test has the valuefalse
, even though+0.0 == -0.0
has the valuetrue
. This allows hashtables to operate properly.
- If
-
floatValue
Returns the value of this MutableDouble as a float.- Specified by:
floatValue
in classNumber
- Returns:
- the numeric value represented by this object after conversion to type float.
-
getAndAdd
Increments this instance's value byoperand
; this method returns the value associated with the instance immediately prior to the addition operation. This method is not thread safe.- Parameters:
operand
- the quantity to add, not null- Returns:
- the value associated with this instance immediately before the operand was added
- Since:
- 3.5
-
getAndAdd
Increments this instance's value byoperand
; this method returns the value associated with the instance immediately prior to the addition operation. This method is not thread safe.- Parameters:
operand
- the quantity to add, not null- Returns:
- the value associated with this instance immediately before the operand was added
- Throws:
NullPointerException
- ifoperand
is null- Since:
- 3.5
-
getAndDecrement
Decrements this instance's value by 1; this method returns the value associated with the instance immediately prior to the decrement operation. This method is not thread safe.- Returns:
- the value associated with the instance before it was decremented
- Since:
- 3.5
-
getAndIncrement
Increments this instance's value by 1; this method returns the value associated with the instance immediately prior to the increment operation. This method is not thread safe.- Returns:
- the value associated with the instance before it was incremented
- Since:
- 3.5
-
getValue
Gets the value as a Double instance. -
hashCode
Returns a suitable hash code for this mutable. -
increment
Increments the value.- Since:
- 2.2
-
incrementAndGet
Increments this instance's value by 1; this method returns the value associated with the instance immediately after the increment operation. This method is not thread safe.- Returns:
- the value associated with the instance after it is incremented
- Since:
- 3.5
-
intValue
Returns the value of this MutableDouble as an int. -
isInfinite
Checks whether the double value is infinite.- Returns:
- true if infinite
-
isNaN
Checks whether the double value is the special NaN value.- Returns:
- true if NaN
-
longValue
Returns the value of this MutableDouble as a long. -
setValue
Sets the value.- Parameters:
value
- the value to set
-
setValue
Sets the value from any Number instance.- Specified by:
setValue
in interfaceMutable<Number>
- Parameters:
value
- the value to set, not null- Throws:
NullPointerException
- if the object is null
-
subtract
Subtracts a value from the value of this instance.- Parameters:
operand
- the value to subtract, not null- Since:
- 2.2
-
subtract
Subtracts a value from the value of this instance.- Parameters:
operand
- the value to subtract, not null- Throws:
NullPointerException
- if the object is null- Since:
- 2.2
-
toDouble
Gets this mutable as an instance of Double.- Returns:
- a Double instance containing the value from this mutable, never null
-
toString
Returns the String value of this mutable.
-