@Beta @GwtCompatible(emulated=true) public abstract class ContiguousSet<C extends Comparable> extends ImmutableSortedSet<C>
DiscreteDomain.
Warning: Be extremely careful what you do with conceptually large instances (such as
ContiguousSet.create(Range.greaterThan(0), DiscreteDomains.integers()). Certain
operations on such a set can be performed efficiently, but others (such as Set.hashCode()
or Collections.frequency(java.util.Collection<?>, java.lang.Object)) can cause major performance problems.
ImmutableSortedSet.Builder<E>| Modifier and Type | Method and Description |
|---|---|
static <E> ImmutableSortedSet.Builder<E> |
builder()
Deprecated.
Use
ImmutableSortedSet.naturalOrder(), which offers
better type-safety. |
static <C extends Comparable> |
create(Range<C> range,
DiscreteDomain<C> domain)
Returns a
ContiguousSet containing the same values in the given domain
contained by the range. |
ContiguousSet<C> |
headSet(C toElement) |
ContiguousSet<C> |
headSet(C toElement,
boolean inclusive) |
abstract ContiguousSet<C> |
intersection(ContiguousSet<C> other)
Returns the set of values that are contained in both this set and the other.
|
abstract Range<C> |
range()
Returns a range, closed on both ends, whose endpoints are the minimum and maximum values
contained in this set.
|
abstract Range<C> |
range(BoundType lowerBoundType,
BoundType upperBoundType)
Returns the minimal range with the given boundary types for which all values in this set are
contained within the range.
|
ContiguousSet<C> |
subSet(C fromElement,
boolean fromInclusive,
C toElement,
boolean toInclusive) |
ContiguousSet<C> |
subSet(C fromElement,
C toElement) |
ContiguousSet<C> |
tailSet(C fromElement) |
ContiguousSet<C> |
tailSet(C fromElement,
boolean inclusive) |
String |
toString()
Returns a short-hand representation of the contents such as
"[1..100]". |
ceiling, comparator, copyOf, copyOf, copyOf, copyOf, copyOf, copyOf, copyOf, copyOfSorted, descendingIterator, descendingSet, first, floor, higher, iterator, last, lower, naturalOrder, of, of, of, of, of, of, of, orderedBy, pollFirst, pollLast, reverseOrderequals, hashCodeadd, addAll, asList, clear, contains, containsAll, isEmpty, remove, removeAll, retainAll, toArray, toArraypublic static <C extends Comparable> ContiguousSet<C> create(Range<C> range, DiscreteDomain<C> domain)
ContiguousSet containing the same values in the given domain
contained by the range.IllegalArgumentException - if neither range nor the domain has a lower bound, or if
neither has an upper boundpublic ContiguousSet<C> headSet(C toElement)
ImmutableSortedSetThis method returns a serializable ImmutableSortedSet.
The SortedSet.headSet(E) documentation states that a subset of a
subset throws an IllegalArgumentException if passed a
toElement greater than an earlier toElement. However, this
method doesn't throw an exception in that situation, but instead keeps the
original toElement.
headSet in interface NavigableSet<C extends Comparable>headSet in interface SortedSet<C extends Comparable>headSet in class ImmutableSortedSet<C extends Comparable>@GwtIncompatible(value="NavigableSet") public ContiguousSet<C> headSet(C toElement, boolean inclusive)
headSet in interface NavigableSet<C extends Comparable>headSet in class ImmutableSortedSet<C extends Comparable>public ContiguousSet<C> subSet(C fromElement, C toElement)
ImmutableSortedSetThis method returns a serializable ImmutableSortedSet.
The SortedSet.subSet(E, E) documentation states that a subset of a
subset throws an IllegalArgumentException if passed a
fromElement smaller than an earlier fromElement. However,
this method doesn't throw an exception in that situation, but instead keeps
the original fromElement. Similarly, this method keeps the
original toElement, instead of throwing an exception, if passed a
toElement greater than an earlier toElement.
subSet in interface NavigableSet<C extends Comparable>subSet in interface SortedSet<C extends Comparable>subSet in class ImmutableSortedSet<C extends Comparable>@GwtIncompatible(value="NavigableSet") public ContiguousSet<C> subSet(C fromElement, boolean fromInclusive, C toElement, boolean toInclusive)
subSet in interface NavigableSet<C extends Comparable>subSet in class ImmutableSortedSet<C extends Comparable>public ContiguousSet<C> tailSet(C fromElement)
ImmutableSortedSetThis method returns a serializable ImmutableSortedSet.
The SortedSet.tailSet(E) documentation states that a subset of a
subset throws an IllegalArgumentException if passed a
fromElement smaller than an earlier fromElement. However,
this method doesn't throw an exception in that situation, but instead keeps
the original fromElement.
tailSet in interface NavigableSet<C extends Comparable>tailSet in interface SortedSet<C extends Comparable>tailSet in class ImmutableSortedSet<C extends Comparable>@GwtIncompatible(value="NavigableSet") public ContiguousSet<C> tailSet(C fromElement, boolean inclusive)
tailSet in interface NavigableSet<C extends Comparable>tailSet in class ImmutableSortedSet<C extends Comparable>public abstract ContiguousSet<C> intersection(ContiguousSet<C> other)
This method should always be used instead of
Sets.intersection(java.util.Set<E>, java.util.Set<?>) for ContiguousSet instances.
public abstract Range<C> range()
range(CLOSED, CLOSED).NoSuchElementException - if this set is emptypublic abstract Range<C> range(BoundType lowerBoundType, BoundType upperBoundType)
Note that this method will return ranges with unbounded endpoints if BoundType.OPEN
is requested for a domain minimum or maximum. For example, if set was created from the
range [1..Integer.MAX_VALUE] then set.range(CLOSED, OPEN) must return
[1..∞).
NoSuchElementException - if this set is emptypublic String toString()
"[1..100]".toString in class ImmutableCollection<C extends Comparable>@Deprecated public static <E> ImmutableSortedSet.Builder<E> builder()
ImmutableSortedSet.naturalOrder(), which offers
better type-safety.ImmutableSortedSet.naturalOrder(), which offers
better type-safety, instead. This method exists only to hide
ImmutableSet.builder() from consumers of ImmutableSortedSet.UnsupportedOperationException - alwaysCopyright © 2010-2013. All Rights Reserved.