Class Interval

    • Field Detail

      • left

        public final int left
        The left extreme of the interval.
      • right

        public final int right
        The right extreme of the interval.
    • Constructor Detail

      • Interval

        protected Interval​(int left,
                           int right)
        Builds an interval with given extremes.

        You cannot generate an empty interval with this constructor. Use Intervals.EMPTY_INTERVAL instead.

        Parameters:
        left - the left extreme.
        right - the right extreme (which must be greater than or equal to the left extreme).
    • Method Detail

      • valueOf

        public static Interval valueOf​(int left,
                                       int right)
        Returns an interval with given extremes.

        You cannot obtain an empty interval with this factory method. Use Intervals.EMPTY_INTERVAL instead.

        Parameters:
        left - the left extreme.
        right - the right extreme (which must be greater than or equal to the left extreme).
        Returns:
        an interval with the given extremes.
      • valueOf

        public static Interval valueOf​(int point)
        Returns a one-point interval.

        You cannot obtain an empty interval with this factory method. Use Intervals.EMPTY_INTERVAL instead.

        Parameters:
        point - a point.
        Returns:
        a one-point interval
      • length

        public int length()
        Returns the interval length, that is, the number of integers contained in the interval.
        Returns:
        the interval length.
      • iterator

        public IntBidirectionalIterator iterator​(int from)
        Returns an iterator over the integers in this interval larger than or equal to a given integer.
        Specified by:
        iterator in interface IntSortedSet
        Parameters:
        from - the starting integer.
        Returns:
        an integer iterator over the elements in this interval.
      • contains

        public boolean contains​(int x)
        Checks whether this interval contains the specified integer.
        Specified by:
        contains in interface IntCollection
        Overrides:
        contains in class AbstractIntCollection
        Parameters:
        x - an integer.
        Returns:
        whether this interval contains x, that is, whether leftxright.
      • contains

        public boolean contains​(Interval interval)
        Checks whether this interval contains the specified interval.
        Parameters:
        interval - an interval.
        Returns:
        whether this interval contains (as a set) interval.
      • contains

        public boolean contains​(int x,
                                int radius)
        Checks whether this interval would contain the specified integer if enlarged in both directions by the specified radius.
        Parameters:
        x - an integer.
        radius - the radius.
        Returns:
        whether this interval enlarged by radius would contain x, e.g., whether leftradiusxright+radius.
      • contains

        public boolean contains​(int x,
                                int leftRadius,
                                int rightRadius)
        Checks whether this interval would contain the specified integer if enlarged in each direction with the respective radius. directions by the specified radius.
        Parameters:
        x - an integer.
        leftRadius - the left radius.
        rightRadius - the right radius.
        Returns:
        whether this interval enlarged to the left by leftRadius and to the right by rightRadius would contain x, e.g., whether leftleftRadiusxright+rightRadius.
      • compareTo

        public int compareTo​(int x)
        Compares this interval to an integer.
        Parameters:
        x - an integer.
        Returns:
        a negative integer, zero, or a positive integer as x is positioned at the left, belongs, or is positioned to the right of this interval, e.g., as x < left, leftxright or right < x.
      • compareTo

        public int compareTo​(int x,
                             int radius)
        Compares this interval to an integer with a specified radius.
        Parameters:
        x - an integer.
        radius - the radius.
        Returns:
        a negative integer, zero, or a positive integer as x is positioned at the left, belongs, or is positioned to the right of this interval enlarged by radius, that is, as x < leftradius, leftradiusxright+radius or right+radius < x.
      • compareTo

        public int compareTo​(int x,
                             int leftRadius,
                             int rightRadius)
        Compares this interval to an integer with specified left and right radii.
        Parameters:
        x - an integer.
        leftRadius - the left radius.
        rightRadius - the right radius.
        Returns:
        a negative integer, zero, or a positive integer as x is positioned at the left, belongs, or is positioned to the right of this interval enlarged by leftRadius on the left and rightRadius in the right, that is, as x < leftleftRadius, leftleftRadiusxright+rightRadius or right+rightRadius < x.
      • equals

        public boolean equals​(Object o)
        Checks whether this interval is equal to another set of integers.
        Specified by:
        equals in interface Collection<Integer>
        Specified by:
        equals in interface Set<Integer>
        Overrides:
        equals in class AbstractIntSet
        Parameters:
        o - an object.
        Returns:
        true if o is an ordered set of integer containing the same element of this interval in the same order, or if o is a set of integers containing the same elements of this interval.