org.apache.commons.lang.math

Class DoubleRange

Implemented Interfaces:
Serializable

public final class DoubleRange
extends Range
implements Serializable

DoubleRange represents an inclusive range of doubles.

Version:
$Id: DoubleRange.java,v 1.5 2003/08/18 02:22:24 bayard Exp $

Author:
Stephen Colebourne

Since:
2.0

Constructor Summary

DoubleRange(Number number)
Constructs a new DoubleRange using the specified number as both the minimum and maximum in this range.
DoubleRange(Number number1, Number number2)
Constructs a new DoubleRange with the specified minimum and maximum numbers (both inclusive).
DoubleRange(double number)
Constructs a new DoubleRange using the specified number as both the minimum and maximum in this range.
DoubleRange(double number1, double number2)
Constructs a new DoubleRange with the specified minimum and maximum numbers (both inclusive).

Method Summary

boolean
containsDouble(double value)
Tests whether the specified double occurs within this range using double comparison.
boolean
containsNumber(Number number)
Tests whether the specified number occurs within this range using double comparison.
boolean
containsRange(Range range)
Tests whether the specified range occurs entirely within this range using double comparison.
boolean
equals(Object obj)
Compares this range to another object to test if they are equal.
double
getMaximumDouble()
Gets the maximum number in this range as a double.
float
getMaximumFloat()
Gets the maximum number in this range as a float.
int
getMaximumInteger()
Gets the maximum number in this range as a int.
long
getMaximumLong()
Gets the maximum number in this range as a long.
Number
getMaximumNumber()
Returns the maximum number in this range.
double
getMinimumDouble()
Gets the minimum number in this range as a double.
float
getMinimumFloat()
Gets the minimum number in this range as a float.
int
getMinimumInteger()
Gets the minimum number in this range as a int.
long
getMinimumLong()
Gets the minimum number in this range as a long.
Number
getMinimumNumber()
Returns the minimum number in this range.
int
hashCode()
Gets a hashCode for the range.
boolean
overlapsRange(Range range)
Tests whether the specified range overlaps with this range using double comparison.
String
toString()
Gets the range as a String.

Methods inherited from class org.apache.commons.lang.math.Range

containsDouble, containsDouble, containsFloat, containsFloat, containsInteger, containsInteger, containsLong, containsLong, containsNumber, containsRange, equals, getMaximumDouble, getMaximumFloat, getMaximumInteger, getMaximumLong, getMaximumNumber, getMinimumDouble, getMinimumFloat, getMinimumInteger, getMinimumLong, getMinimumNumber, hashCode, overlapsRange, toString

Constructor Details

DoubleRange

public DoubleRange(Number number)
Constructs a new DoubleRange using the specified number as both the minimum and maximum in this range.

Parameters:
number - the number to use for this range, must not be null


DoubleRange

public DoubleRange(Number number1,
                   Number number2)
Constructs a new DoubleRange with the specified minimum and maximum numbers (both inclusive).

The arguments may be passed in the order (min,max) or (max,min). The getMinimum and getMaximum methods will return the correct values.

Parameters:
number1 - first number that defines the edge of the range, inclusive
number2 - second number that defines the edge of the range, inclusive


DoubleRange

public DoubleRange(double number)
Constructs a new DoubleRange using the specified number as both the minimum and maximum in this range.

Parameters:
number - the number to use for this range


DoubleRange

public DoubleRange(double number1,
                   double number2)
Constructs a new DoubleRange with the specified minimum and maximum numbers (both inclusive).

The arguments may be passed in the order (min,max) or (max,min). The getMinimum and getMaximum methods will return the correct values.

Parameters:
number1 - first number that defines the edge of the range, inclusive
number2 - second number that defines the edge of the range, inclusive

Method Details

containsDouble

public boolean containsDouble(double value)
Tests whether the specified double occurs within this range using double comparison.

This implementation overrides the superclass for performance as it is the most common case.

Overrides:
containsDouble in interface Range

Parameters:
value - the double to test

Returns:
true if the specified number occurs within this range by double comparison


containsNumber

public boolean containsNumber(Number number)
Tests whether the specified number occurs within this range using double comparison.

null is handled and returns false.

Overrides:
containsNumber in interface Range

Parameters:
number - the number to test, may be null

Returns:
true if the specified number occurs within this range


containsRange

public boolean containsRange(Range range)
Tests whether the specified range occurs entirely within this range using double comparison.

null is handled and returns false.

Overrides:
containsRange in interface Range

Parameters:
range - the range to test, may be null

Returns:
true if the specified range occurs entirely within this range


equals

public boolean equals(Object obj)
Compares this range to another object to test if they are equal..

To be equal, the class, minimum and maximum must be equal.

Overrides:
equals in interface Range

Parameters:
obj - the reference object with which to compare

Returns:
true if this object is equal


getMaximumDouble

public double getMaximumDouble()
Gets the maximum number in this range as a double.
Overrides:
getMaximumDouble in interface Range

Returns:
the maximum number in this range


getMaximumFloat

public float getMaximumFloat()
Gets the maximum number in this range as a float.

This conversion can lose information for large values.

Overrides:
getMaximumFloat in interface Range

Returns:
the maximum number in this range


getMaximumInteger

public int getMaximumInteger()
Gets the maximum number in this range as a int.

This conversion can lose information for large values or decimals.

Overrides:
getMaximumInteger in interface Range

Returns:
the maximum number in this range


getMaximumLong

public long getMaximumLong()
Gets the maximum number in this range as a long.

This conversion can lose information for large values or decimals.

Overrides:
getMaximumLong in interface Range

Returns:
the maximum number in this range


getMaximumNumber

public Number getMaximumNumber()
Returns the maximum number in this range.
Overrides:
getMaximumNumber in interface Range

Returns:
the maximum number in this range


getMinimumDouble

public double getMinimumDouble()
Gets the minimum number in this range as a double.
Overrides:
getMinimumDouble in interface Range

Returns:
the minimum number in this range


getMinimumFloat

public float getMinimumFloat()
Gets the minimum number in this range as a float.

This conversion can lose information for large values.

Overrides:
getMinimumFloat in interface Range

Returns:
the minimum number in this range


getMinimumInteger

public int getMinimumInteger()
Gets the minimum number in this range as a int.

This conversion can lose information for large values or decimals.

Overrides:
getMinimumInteger in interface Range

Returns:
the minimum number in this range


getMinimumLong

public long getMinimumLong()
Gets the minimum number in this range as a long.

This conversion can lose information for large values or decimals.

Overrides:
getMinimumLong in interface Range

Returns:
the minimum number in this range


getMinimumNumber

public Number getMinimumNumber()
Returns the minimum number in this range.
Overrides:
getMinimumNumber in interface Range

Returns:
the minimum number in this range


hashCode

public int hashCode()
Gets a hashCode for the range.
Overrides:
hashCode in interface Range

Returns:
a hash code value for this object


overlapsRange

public boolean overlapsRange(Range range)
Tests whether the specified range overlaps with this range using double comparison.

null is handled and returns false.

Overrides:
overlapsRange in interface Range

Parameters:
range - the range to test, may be null

Returns:
true if the specified range overlaps with this range


toString

public String toString()
Gets the range as a String.

The format of the String is 'Range[min,max]'.

Overrides:
toString in interface Range

Returns:
the String representation of this range


Copyright © 2001-2003 - Apache Software Foundation