This class
provides an immutable object wrapper around the
double primitive data type. doubleValue(
) returns the primitive double value of
a Double object, and there are other methods
(which override Number methods and whose names all
end in "Value") for returning a the
wrapped double value as a variety of other
primitive types.
This class also provides some useful constants and static methods for
testing double values.
MIN_VALUE and MAX_VALUE are the
smallest (closest to zero) and largest representable
double
values.
POSITIVE_INFINITY and
NEGATIVE_INFINITY are the
double representations of
infinity and negative infinity, and
NaN is special double
"not a number" value.
isInfinite( ) in class and instance method forms
tests whether a double or a
Double has an infinite value. Similarly,
isNaN( ) tests whether a double
or Double is not-a-number; this is a comparison
that cannot be done directly because the NaN
constant never tests equal to any other value, including itself.
The static parseDouble(
)
method converts a
String to a double. The static
valueOf( ) converts a
String to a Double, and is
basically equivalent to the Double( ) constructor
that takes a String argument. The static and
instance toString( ) methods perform the opposite
conversion: they convert a double or a
Double to a String. See also
java.text.NumberFormat for more flexible number
parsing and formatting.
The compareTo( ) method
makes Double object Comparable
which is useful for ordering and sorting. The static
compare( ) method is
similar (its return values have the same meaning as those of
Comparable.compareTo( )) but works on primitive
values rather than objects and is useful when ordering and sorting
arrays of double values.
doubleToLongBits( ),
doubleToRawBits(
) and longBitsToDouble( )
allow you to manipulate the bit representation (defined by IEEE 754)
of a double directly (which is not something that
most applications ever need to do).
Figure 10-17. java.lang.Double
public final class
Double extends Number implements Comparable<Double> {
// Public Constructors
public
Double (String
s ) throws NumberFormatException;
public
Double (double
value );
// Public Constants
public static final double
MAX_VALUE ; =1.7976931348623157E308
public static final double
MIN_VALUE ; =4.9E-324
public static final double
NaN ; =NaN
public static final double
NEGATIVE_INFINITY ; =-Infinity
public static final double
POSITIVE_INFINITY ; =Infinity
5.0 public static final int
SIZE ; =64
1.1 public static final Class<Double>
TYPE ;
// Public Class Methods
1.4 public static int
compare (double
d1 , double
d2 );
public static long
doubleToLongBits (double
value ); native
1.3 public static long
doubleToRawLongBits (double
value ); native
public static boolean
isInfinite (double
v );
public static boolean
isNaN (double
v );
public static double
longBitsToDouble (long
bits ); native
1.2 public static double
parseDouble (String
s ) throws NumberFormatException;
5.0 public static String
toHexString (double
d );
public static String
toString (double
d );
public static Double
valueOf (String
s ) throws NumberFormatException;
5.0 public static Double
valueOf (double
d );
// Public Instance Methods
public boolean
isInfinite ( );
public boolean
isNaN ( );
// Methods Implementing Comparable
1.2 public int
compareTo (Double
anotherDouble );
// Public Methods Overriding Number
1.1 public byte
byteValue ( );
public double
doubleValue ( );
public float
floatValue ( );
public int
intValue ( );
public long
longValue ( );
1.1 public short
shortValue ( );
// Public Methods Overriding Object
public boolean
equals (Object
obj );
public int
hashCode ( );
public String
toString ( );
}