public class DoubleAVLTreeSet extends AbstractDoubleSortedSet implements java.io.Serializable, java.lang.Cloneable, DoubleSortedSet
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 |
---|
DoubleAVLTreeSet()
Creates a new empty tree set.
|
DoubleAVLTreeSet(java.util.Collection<? extends java.lang.Double> c)
Creates a new tree set copying a given set.
|
DoubleAVLTreeSet(java.util.Comparator<? super java.lang.Double> c)
Creates a new empty tree set with the given comparator.
|
DoubleAVLTreeSet(double[] a)
Creates a new tree set copying the elements of an array.
|
DoubleAVLTreeSet(double[] a,
java.util.Comparator<? super java.lang.Double> c)
Creates a new tree set copying the elements of an array using a given
Comparator . |
DoubleAVLTreeSet(double[] a,
int offset,
int length)
Creates a new tree set and fills it with the elements of a given array.
|
DoubleAVLTreeSet(double[] a,
int offset,
int length,
java.util.Comparator<? super java.lang.Double> c)
Creates a new tree set and fills it with the elements of a given array using a given
Comparator . |
DoubleAVLTreeSet(DoubleCollection c)
Creates a new tree set copying a given type-specific collection.
|
DoubleAVLTreeSet(DoubleIterator i)
Creates a new tree set using elements provided by a type-specific iterator.
|
DoubleAVLTreeSet(DoubleSortedSet s)
Creates a new tree set copying a given type-specific sorted set (and its
Comparator ). |
DoubleAVLTreeSet(java.util.Iterator<?> i)
Creates a new tree set using elements provided by an iterator.
|
DoubleAVLTreeSet(java.util.SortedSet<java.lang.Double> s)
Creates a new tree set copying a given sorted set (and its
Comparator ). |
Modifier and Type | Method and Description |
---|---|
boolean |
add(double k)
Ensures that this collection contains the specified element (optional operation).
|
void |
clear() |
java.lang.Object |
clone()
Returns a deep copy of this tree set.
|
DoubleComparator |
comparator() |
boolean |
contains(double k)
Returns
true if this collection contains the specified element. |
double |
firstDouble()
Returns the first (lowest) element currently in this set.
|
DoubleSortedSet |
headSet(double to)
Returns a view of the portion of this sorted set whose elements are strictly less than
toElement . |
boolean |
isEmpty() |
DoubleBidirectionalIterator |
iterator()
Returns a type-specific iterator on the elements of this collection.
|
DoubleBidirectionalIterator |
iterator(double from)
Returns a type-specific
BidirectionalIterator on the elements in
this set, starting from a given element of the domain (optional operation). |
double |
lastDouble()
Returns the last (highest) element currently in this set.
|
boolean |
remove(double k)
Removes an element from this set.
|
int |
size() |
DoubleSortedSet |
subSet(double from,
double to)
Returns a view of the portion of this sorted set whose elements range from
fromElement , inclusive, to toElement , exclusive. |
DoubleSortedSet |
tailSet(double from)
Returns a view of the portion of this sorted set whose elements are greater than or equal to
fromElement . |
equals, hashCode, rem
add, addAll, addAll, contains, containsAll, containsAll, forEach, remove, removeAll, removeAll, removeIf, retainAll, retainAll, toArray, toDoubleArray, toDoubleArray, toString
first, headSet, last, spliterator, subSet, tailSet
add, contains, of, of, of, of, of, rem, remove
addAll, containsAll, doubleIterator, doubleParallelStream, doubleSpliterator, doubleStream, parallelStream, removeAll, removeIf, removeIf, removeIf, retainAll, stream, toArray, toDoubleArray, toDoubleArray
forEach, forEach, forEach
public DoubleAVLTreeSet()
public DoubleAVLTreeSet(java.util.Comparator<? super java.lang.Double> c)
c
- a Comparator
(even better, a type-specific comparator).public DoubleAVLTreeSet(java.util.Collection<? extends java.lang.Double> c)
c
- a collection to be copied into the new tree set.public DoubleAVLTreeSet(java.util.SortedSet<java.lang.Double> s)
Comparator
).s
- a SortedSet
to be copied into the new tree set.public DoubleAVLTreeSet(DoubleCollection c)
c
- a type-specific collection to be copied into the new tree set.public DoubleAVLTreeSet(DoubleSortedSet s)
Comparator
).s
- a type-specific sorted set to be copied into the new tree set.public DoubleAVLTreeSet(DoubleIterator i)
i
- a type-specific iterator whose elements will fill the set.public DoubleAVLTreeSet(java.util.Iterator<?> i)
i
- an iterator whose elements will fill the set.public DoubleAVLTreeSet(double[] a, int offset, int length, java.util.Comparator<? super java.lang.Double> 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 DoubleAVLTreeSet(double[] 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 DoubleAVLTreeSet(double[] a)
a
- an array to be copied into the new tree set.public DoubleAVLTreeSet(double[] a, java.util.Comparator<? super java.lang.Double> 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(double k)
AbstractDoubleCollection
add
in interface DoubleCollection
add
in class AbstractDoubleCollection
Collection.add(Object)
public boolean remove(double k)
AbstractDoubleSet
rem()
method
implemented by type-specific abstract Collection
superclass.remove
in interface DoubleSet
remove
in class AbstractDoubleSet
Collection.remove(Object)
public boolean contains(double k)
AbstractDoubleCollection
true
if this collection contains the specified element.contains
in interface DoubleCollection
contains
in class AbstractDoubleCollection
Collection.contains(Object)
public void clear()
clear
in interface java.util.Collection<java.lang.Double>
clear
in interface java.util.Set<java.lang.Double>
clear
in class java.util.AbstractCollection<java.lang.Double>
public int size()
size
in interface java.util.Collection<java.lang.Double>
size
in interface java.util.Set<java.lang.Double>
size
in class java.util.AbstractCollection<java.lang.Double>
public boolean isEmpty()
isEmpty
in interface java.util.Collection<java.lang.Double>
isEmpty
in interface java.util.Set<java.lang.Double>
isEmpty
in class java.util.AbstractCollection<java.lang.Double>
public double firstDouble()
DoubleSortedSet
firstDouble
in interface DoubleSortedSet
SortedSet.first()
public double lastDouble()
DoubleSortedSet
lastDouble
in interface DoubleSortedSet
SortedSet.last()
public DoubleBidirectionalIterator iterator()
DoubleCollection
iterator
in interface DoubleBidirectionalIterable
iterator
in interface DoubleCollection
iterator
in interface DoubleIterable
iterator
in interface DoubleSet
iterator
in interface DoubleSortedSet
iterator
in interface java.lang.Iterable<java.lang.Double>
iterator
in interface java.util.Collection<java.lang.Double>
iterator
in interface java.util.Set<java.lang.Double>
iterator
in class AbstractDoubleSortedSet
Iterable.iterator()
public DoubleBidirectionalIterator iterator(double from)
DoubleSortedSet
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 DoubleSortedSet
from
- an element to start from.public DoubleComparator comparator()
DoubleSortedSet
comparator
in interface DoubleSortedSet
comparator
in interface java.util.SortedSet<java.lang.Double>
public DoubleSortedSet headSet(double to)
DoubleSortedSet
toElement
.headSet
in interface DoubleSortedSet
SortedSet.headSet(Object)
public DoubleSortedSet tailSet(double from)
DoubleSortedSet
fromElement
.tailSet
in interface DoubleSortedSet
SortedSet.tailSet(Object)
public DoubleSortedSet subSet(double from, double to)
DoubleSortedSet
fromElement
, inclusive, to toElement
, exclusive.subSet
in interface DoubleSortedSet
SortedSet.subSet(Object,Object)
public java.lang.Object clone()
This method performs a deep copy of this tree set; the data stored in the set, however, is not cloned. Note that this makes a difference only for object keys.
clone
in class java.lang.Object