org.apache.commons.lang

Class NumberRange


public final class NumberRange
extends java.lang.Object

Represents a range of Number objects.

This class uses double comparisons. This means that it is unsuitable for dealing with large Long, BigDecimal or BigInteger numbers.

Version:
$Revision: 1.10 $ $Date: 2003/08/18 02:22:23 $

Authors:
Christopher Elkins
Stephen Colebourne

Since:
1.0

Constructor Summary

NumberRange(Number num)
Constructs a new NumberRange using number as both the minimum and maximum in this range.
NumberRange(Number min, Number max)
Constructs a new NumberRange with the specified minimum and maximum numbers.

Method Summary

boolean
equals(Object obj)
Indicates whether some other Object is "equal" to this one.
Number
getMaximum()
Returns the maximum number in this range.
Number
getMinimum()
Returns the minimum number in this range.
int
hashCode()
Returns a hash code value for this object.
boolean
includesNumber(Number number)
Tests whether the specified number occurs within this range using double comparison.
boolean
includesRange(NumberRange range)
Tests whether the specified range occurs entirely within this range using double comparison.
boolean
overlaps(NumberRange range)
Tests whether the specified range overlaps with this range using double comparison.
String
toString()
Returns the string representation of this range.

Constructor Details

NumberRange

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

Parameters:
num - the number to use for this range


NumberRange

public NumberRange(Number min,
                   Number max)
Constructs a new NumberRange with the specified minimum and maximum numbers.

If the maximum is less than the minimum, the range will be constructed from the minimum value to the minimum value, not what you would expect!.

Parameters:
min - the minimum number in this range
max - the maximum number in this range

Method Details

equals

public boolean equals(Object obj)
Indicates whether some other Object is "equal" to this one.

Parameters:
obj - the reference object with which to compare

Returns:
true if this object is the same as the obj argument; false otherwise


getMaximum

public Number getMaximum()
Returns the maximum number in this range.

Returns:
the maximum number in this range


getMinimum

public Number getMinimum()
Returns the minimum number in this range.

Returns:
the minimum number in this range


hashCode

public int hashCode()
Returns a hash code value for this object.

Returns:
a hash code value for this object


includesNumber

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

Parameters:
number - the number to test

Returns:
true if the specified number occurs within this range; otherwise, false


includesRange

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

Parameters:
range - the range to test

Returns:
true if the specified range occurs entirely within this range; otherwise, false


overlaps

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

Parameters:
range - the range to test

Returns:
true if the specified range overlaps with this range; otherwise, false


toString

public String toString()
Returns the string representation of this range.

This string is the string representation of the minimum and maximum numbers in the range, separated by a hyphen. If a number is negative, then it is enclosed in parentheses.

Returns:
the string representation of this range


Copyright © 2001-2003 - Apache Software Foundation