org.apache.commons.lang.mutable

Class MutableDouble

Implemented Interfaces:
Comparable, Mutable

public class MutableDouble
extends Number
implements Comparable, Mutable

A mutable double wrapper.
Version:
$Id: MutableDouble.java 161243 2005-04-14 04:30:28Z ggregory $
Since:
2.1
See Also:
Double

Constructor Summary

MutableDouble()
Constructs a new MutableDouble with the default value of zero.
MutableDouble(Number value)
Constructs a new MutableDouble with the specified value.
MutableDouble(double value)
Constructs a new MutableDouble with the specified value.

Method Summary

int
compareTo(Object obj)
Compares this mutable to another in ascending order.
double
doubleValue()
Returns the value of this MutableDouble as a double.
boolean
equals(Object obj)
Compares this object against the specified object.
float
floatValue()
Returns the value of this MutableDouble as a float.
Object
getValue()
Gets the value as a Double instance.
int
hashCode()
Returns a suitable hashcode for this mutable.
int
intValue()
Returns the value of this MutableDouble as a int.
boolean
isInfinite()
Checks whether the double value is infinite.
boolean
isNaN()
Checks whether the double value is the special NaN value.
long
longValue()
Returns the value of this MutableDouble as a long.
void
setValue(Object value)
Sets the value from any Number instance.
void
setValue(double value)
Sets the value.
String
toString()
Returns the String value of this mutable.

Constructor Details

MutableDouble

public MutableDouble()
Constructs a new MutableDouble with the default value of zero.

MutableDouble

public MutableDouble(Number value)
Constructs a new MutableDouble with the specified value.
Parameters:
value - a value.

MutableDouble

public MutableDouble(double value)
Constructs a new MutableDouble with the specified value.
Parameters:
value - a value.

Method Details

compareTo

public int compareTo(Object obj)
Compares this mutable to another in ascending order.
Parameters:
obj - the mutable to compare to
Returns:
negative if this is less, zero if equal, positive if greater

doubleValue

public double doubleValue()
Returns the value of this MutableDouble as a double.
Returns:
the numeric value represented by this object after conversion to type double.

equals

public boolean equals(Object obj)
Compares this object against the specified object. The result is true if and only if the argument is not null and is a Double 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, two double values are considered to be the same if and only if the method Double.doubleToLongBits(double)returns the same long value when applied to each.

Note that in most cases, for two instances of class Double,d1 and d2, the value of d1.equals(d2) is true if and only if

   d1.doubleValue() == d2.doubleValue()
 

also has the value true. However, there are two exceptions:

  • If d1 and d2 both represent Double.NaN, then the equals method returns true, even though Double.NaN==Double.NaN has the value false.
  • If d1 represents +0.0 while d2 represents -0.0, or vice versa, the equal test has the value false, even though +0.0==-0.0 has the value true. This allows hashtables to operate properly.
Parameters:
obj - the object to compare with.
Returns:
true if the objects are the same; false otherwise.

floatValue

public float floatValue()
Returns the value of this MutableDouble as a float.
Returns:
the numeric value represented by this object after conversion to type float.

getValue

public Object getValue()
Gets the value as a Double instance.
Specified by:
getValue in interface Mutable
Returns:
the value as a Double

hashCode

public int hashCode()
Returns a suitable hashcode for this mutable.
Returns:
a suitable hashcode

intValue

public int intValue()
Returns the value of this MutableDouble as a int.
Returns:
the numeric value represented by this object after conversion to type int.

isInfinite

public boolean isInfinite()
Checks whether the double value is infinite.
Returns:
true if infinite

isNaN

public boolean isNaN()
Checks whether the double value is the special NaN value.
Returns:
true if NaN

longValue

public long longValue()
Returns the value of this MutableDouble as a long.
Returns:
the numeric value represented by this object after conversion to type long.

setValue

public void setValue(Object value)
Sets the value from any Number instance.
Specified by:
setValue in interface Mutable
Parameters:
value - the value to set

setValue

public void setValue(double value)
Sets the value.
Parameters:
value - the value to set

toString

public String toString()
Returns the String value of this mutable.
Returns:
the mutable value as a string

Copyright © 2001-2005 - Apache Software Foundation