Class NumberRange
- java.lang.Object
-
- org.apache.commons.lang.math.Range
-
- org.apache.commons.lang.math.NumberRange
-
- All Implemented Interfaces:
Serializable
public final class NumberRange extends Range implements Serializable
NumberRange
represents an inclusive range ofNumber
objects of the same type.- Since:
- 2.0 (previously in org.apache.commons.lang)
- Version:
- $Id: NumberRange.java 1057072 2011-01-10 01:55:57Z niallp $
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description NumberRange(Number num)
Constructs a newNumberRange
using the specified number as both the minimum and maximum in this range.NumberRange(Number num1, Number num2)
Constructs a newNumberRange
with the specified minimum and maximum numbers (both inclusive).
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
containsNumber(Number number)
Tests whether the specifiednumber
occurs within this range.boolean
equals(Object obj)
Compares this range to another object to test if they are equal.Number
getMaximumNumber()
Returns the maximum number in this range.Number
getMinimumNumber()
Returns the minimum number in this range.int
hashCode()
Gets a hashCode for the range.String
toString()
Gets the range as aString
.-
Methods inherited from class org.apache.commons.lang.math.Range
containsDouble, containsDouble, containsFloat, containsFloat, containsInteger, containsInteger, containsLong, containsLong, containsRange, getMaximumDouble, getMaximumFloat, getMaximumInteger, getMaximumLong, getMinimumDouble, getMinimumFloat, getMinimumInteger, getMinimumLong, overlapsRange
-
-
-
-
Constructor Detail
-
NumberRange
public NumberRange(Number num)
Constructs a new
NumberRange
using the specified number as both the minimum and maximum in this range.- Parameters:
num
- the number to use for this range- Throws:
IllegalArgumentException
- if the number isnull
IllegalArgumentException
- if the number doesn't implementComparable
IllegalArgumentException
- if the number isDouble.NaN
orFloat.NaN
-
NumberRange
public NumberRange(Number num1, Number num2)
Constructs a new
NumberRange
with the specified minimum and maximum numbers (both inclusive).The arguments may be passed in the order (min,max) or (max,min). The
getMinimumNumber()
andgetMaximumNumber()
methods will return the correct value.This constructor is designed to be used with two
Number
objects of the same type. If two objects of different types are passed in, an exception is thrown.- Parameters:
num1
- first number that defines the edge of the range, inclusivenum2
- second number that defines the edge of the range, inclusive- Throws:
IllegalArgumentException
- if either number isnull
IllegalArgumentException
- if the numbers are of different typesIllegalArgumentException
- if the numbers don't implementComparable
-
-
Method Detail
-
getMinimumNumber
public Number getMinimumNumber()
Returns the minimum number in this range.
- Specified by:
getMinimumNumber
in classRange
- Returns:
- the minimum number in this range
-
getMaximumNumber
public Number getMaximumNumber()
Returns the maximum number in this range.
- Specified by:
getMaximumNumber
in classRange
- Returns:
- the maximum number in this range
-
containsNumber
public boolean containsNumber(Number number)
Tests whether the specified
number
occurs within this range.null
is handled and returnsfalse
.- Specified by:
containsNumber
in classRange
- Parameters:
number
- the number to test, may benull
- Returns:
true
if the specified number occurs within this range- Throws:
IllegalArgumentException
- if the number is of a different type to the 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.
-
hashCode
public int hashCode()
Gets a hashCode for the range.
-
-