public class IntRBTreeSet extends AbstractIntSortedSet implements Serializable, Cloneable, IntSortedSet
The iterators provided by this class are type-specific bidirectional iterators
. Moreover, the iterator returned by iterator()
can
be safely cast to a type-specific list iterator.
Constructor and Description |
---|
IntRBTreeSet()
Creates a new empty tree set.
|
IntRBTreeSet(Collection<? extends Integer> c)
Creates a new tree set copying a given collection.
|
IntRBTreeSet(Comparator<? super Integer> c)
Creates a new empty tree set with the given comparator.
|
IntRBTreeSet(int[] a)
Creates a new tree set copying the elements of an array.
|
IntRBTreeSet(int[] a,
Comparator<? super Integer> c)
Creates a new tree set copying the elements of an array using a given
Comparator . |
IntRBTreeSet(int[] a,
int offset,
int length)
Creates a new tree set and fills it with the elements of a given array.
|
IntRBTreeSet(int[] a,
int offset,
int length,
Comparator<? super Integer> c)
Creates a new tree set and fills it with the elements of a given array using a given
Comparator . |
IntRBTreeSet(IntCollection c)
Creates a new tree set copying a given type-specific collection.
|
IntRBTreeSet(IntIterator i)
Creates a new tree set using elements provided by a type-specific iterator.
|
IntRBTreeSet(IntSortedSet s)
Creates a new tree set copying a given type-specific sorted set (and its
Comparator ). |
IntRBTreeSet(Iterator<?> i)
Creates a new tree set using elements provided by an iterator.
|
IntRBTreeSet(SortedSet<Integer> s)
Creates a new tree set copying a given sorted set (and its
Comparator ). |
Modifier and Type | Method and Description |
---|---|
boolean |
add(int k) |
void |
clear() |
Object |
clone()
Returns a deep copy of this tree set.
|
IntComparator |
comparator()
Returns the comparator associated with this sorted set, or null if it uses its elements' natural ordering.
|
boolean |
contains(int k) |
int |
firstInt() |
IntSortedSet |
headSet(int to) |
boolean |
isEmpty() |
IntBidirectionalIterator |
iterator()
Returns a type-specific iterator on the elements of this collection.
|
IntBidirectionalIterator |
iterator(int from)
Returns a type-specific
BidirectionalIterator on the elements in this set, starting from a given element of the domain (optional operation). |
int |
lastInt() |
boolean |
remove(int k)
Removes an element from this set.
|
int |
size() |
IntSortedSet |
subSet(int from,
int to) |
IntSortedSet |
tailSet(int from) |
first, headSet, intIterator, last, subSet, tailSet
equals, hashCode, rem, remove
add, addAll, addAll, contains, containsAll, containsAll, rem, removeAll, removeAll, retainAll, retainAll, toArray, toArray, toArray, toIntArray, toIntArray, toString
headSet, intIterator, subSet, tailSet
addAll, containsAll, rem, removeAll, retainAll, toArray, toArray, toIntArray, toIntArray
first, last, spliterator
add, addAll, contains, containsAll, equals, hashCode, remove, removeAll, retainAll, toArray, toArray
parallelStream, removeIf, stream
public IntRBTreeSet()
public IntRBTreeSet(Comparator<? super Integer> c)
c
- a Comparator
(even better, a type-specific comparator).public IntRBTreeSet(Collection<? extends Integer> c)
c
- a collection to be copied into the new tree set.public IntRBTreeSet(SortedSet<Integer> s)
Comparator
).s
- a SortedSet
to be copied into the new tree set.public IntRBTreeSet(IntCollection c)
c
- a type-specific collection to be copied into the new tree set.public IntRBTreeSet(IntSortedSet s)
Comparator
).s
- a type-specific sorted set to be copied into the new tree set.public IntRBTreeSet(IntIterator i)
i
- a type-specific iterator whose elements will fill the set.public IntRBTreeSet(Iterator<?> i)
i
- an iterator whose elements will fill the set.public IntRBTreeSet(int[] a, int offset, int length, Comparator<? super Integer> c)
Comparator
.a
- an array whose elements will be used to fill the set.offset
- the first element to use.length
- the number of elements to use.c
- a Comparator
(even better, a type-specific comparator).public IntRBTreeSet(int[] a, int offset, int length)
a
- an array whose elements will be used to fill the set.offset
- the first element to use.length
- the number of elements to use.public IntRBTreeSet(int[] a)
a
- an array to be copied into the new tree set.public IntRBTreeSet(int[] a, Comparator<? super Integer> c)
Comparator
.a
- an array to be copied into the new tree set.c
- a Comparator
(even better, a type-specific comparator).public boolean add(int k)
add
in interface IntCollection
add
in class AbstractIntCollection
Collection.add(Object)
public boolean remove(int k)
IntSet
Note that the corresponding method of the type-specific collection is rem()
. This unfortunate situation is caused by the clash with the similarly named index-based method in the
List
interface.
remove
in interface IntSet
remove
in class AbstractIntSet
Collection.remove(Object)
public boolean contains(int k)
contains
in interface IntCollection
contains
in class AbstractIntCollection
Collection.contains(Object)
public void clear()
clear
in interface Collection<Integer>
clear
in interface Set<Integer>
clear
in class AbstractCollection<Integer>
public int size()
size
in interface Collection<Integer>
size
in interface Set<Integer>
size
in class AbstractCollection<Integer>
public boolean isEmpty()
isEmpty
in interface Collection<Integer>
isEmpty
in interface Set<Integer>
isEmpty
in class AbstractIntCollection
public int firstInt()
firstInt
in interface IntSortedSet
SortedSet.first()
public int lastInt()
lastInt
in interface IntSortedSet
SortedSet.last()
public IntBidirectionalIterator iterator()
IntCollection
Note that this specification strengthens the one given in Iterable.iterator()
, which was already strengthened in the corresponding type-specific class, but was weakened by
the fact that this interface extends Collection
.
iterator
in interface IntCollection
iterator
in interface IntIterable
iterator
in interface IntSet
iterator
in interface IntSortedSet
iterator
in interface Iterable<Integer>
iterator
in interface Collection<Integer>
iterator
in interface Set<Integer>
iterator
in class AbstractIntSortedSet
public IntBidirectionalIterator iterator(int from)
IntSortedSet
BidirectionalIterator
on the elements in this set, starting from a given element of the domain (optional operation).
This method returns a type-specific bidirectional iterator with given starting point. The starting point is any element comparable to the elements of this set (even if it does not actually
belong to the set). The next element of the returned iterator is the least element of the set that is greater than the starting point (if there are no elements greater than the starting point,
hasNext()
will return false
). The previous element of the returned iterator is the greatest element of the set that is
smaller than or equal to the starting point (if there are no elements smaller than or equal to the starting point, hasPrevious()
will return false
).
Note that passing the last element of the set as starting point and calling previous()
you can traverse the entire set in
reverse order.
iterator
in interface IntSortedSet
from
- an element to start from.public IntComparator comparator()
IntSortedSet
Note that this specification strengthens the one given in SortedSet.comparator()
.
comparator
in interface IntSortedSet
comparator
in interface SortedSet<Integer>
SortedSet.comparator()
public IntSortedSet headSet(int to)
headSet
in interface IntSortedSet
SortedSet.headSet(Object)
public IntSortedSet tailSet(int from)
tailSet
in interface IntSortedSet
SortedSet.tailSet(Object)
public IntSortedSet subSet(int from, int to)
subSet
in interface IntSortedSet
SortedSet.subSet(Object,Object)