The Interval class represents a time interval with integer precision.

An interval is specified by an inclusive start() and end() time. These must be set in the constructor, as this is an immutable class. The specific units of time represented by the class have not been defined - it is suitable for any times which can be represented by a signed 64 bit integer.

The isNormal() method determines if a time interval is normal (a normal time interval has start() <= end() ). A normal interval can be received from an abnormal interval by calling the normalized() method.

The contains() method determines if a specified time lies within the time interval.

The translated() method returns a time interval which has been translated forwards or backwards through time by a specified offset.

See also


Constructs an interval with the specified start and end times.

Returns true if the time interval contains the specified time. That is, start() <= time <= end() .

Returns the end time of the interval.

See also


Returns true if this time interval is normal. A normal time interval has start() <= end() .

See also


Returns a normalized version of this interval.

If the start() time of the interval is greater than the end() time, then the returned interval has the start and end times swapped.

Returns true if lhs is not exactly equal to rhs.

Returns true if lhs is exactly equal to rhs.

Returns the start time of the interval.

See also


Returns a copy of this time interval, translated by a value of offset. An interval can be moved forward through time with a positive offset, or backward through time with a negative offset.