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>,Supplier<Number>,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
ConstructorsConstructorDescriptionConstructs 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 TypeMethodDescriptionvoidadd(double operand) Adds a value to the value of this instance.voidAdds a value to the value of this instance.doubleaddAndGet(double operand) Increments this instance's value byoperand; this method returns the value associated with the instance immediately after the addition operation.doubleIncrements this instance's value byoperand; this method returns the value associated with the instance immediately after the addition operation.intcompareTo(MutableDouble other) Compares this mutable to another in ascending order.voidDecrements the value.doubleDecrements this instance's value by 1; this method returns the value associated with the instance immediately after the decrement operation.doubleReturns the value of this MutableDouble as a double.booleanCompares this object against the specified object.floatReturns the value of this MutableDouble as a float.doublegetAndAdd(double operand) Increments this instance's value byoperand; this method returns the value associated with the instance immediately prior to the addition operation.doubleIncrements this instance's value byoperand; this method returns the value associated with the instance immediately prior to the addition operation.doubleDecrements this instance's value by 1; this method returns the value associated with the instance immediately prior to the decrement operation.doubleIncrements this instance's value by 1; this method returns the value associated with the instance immediately prior to the increment operation.getValue()Deprecated.inthashCode()Returns a suitable hash code for this mutable.voidIncrements the value.doubleIncrements this instance's value by 1; this method returns the value associated with the instance immediately after the increment operation.intintValue()Returns the value of this MutableDouble as an int.booleanChecks whether the double value is infinite.booleanisNaN()Checks whether the double value is the special NaN value.longReturns the value of this MutableDouble as a long.voidsetValue(double value) Sets the value.voidSets the value from any Number instance.voidsubtract(double operand) Subtracts a value from the value of this instance.voidSubtracts 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, seeDouble.parseDouble(String).- 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- ifoperandis null- Since:
- 3.5
-
compareTo
Compares this mutable to another in ascending order.- Specified by:
compareToin 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:
doubleValuein classNumber- Returns:
- the numeric value represented by this object after conversion to type double.
-
equals
Compares this object against the specified object. The result istrueif and only if the argument is notnulland is aDoubleobject that represents a double that has the identical bit pattern to the bit pattern of the double represented by this object. For this purpose, twodoublevalues 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,d1andd2, the value ofd1.equals(d2)istrueif and only ifd1.doubleValue() == d2.doubleValue()
also has the value
true. However, there are two exceptions:- If
d1andd2both representDouble.NaN, then theequalsmethod returnstrue, even thoughDouble.NaN == Double.NaNhas the valuefalse. - If
d1represents+0.0whiled2represents-0.0, or vice versa, theequaltest has the valuefalse, even though+0.0 == -0.0has the valuetrue. This allows hashtables to operate properly.
- If
-
floatValue
Returns the value of this MutableDouble as a float.- Specified by:
floatValuein 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- ifoperandis 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
Deprecated.UseMutable.get().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:
setValuein 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.
-
Mutable.get().