public class DoubleArraySet extends AbstractDoubleSet implements Serializable, Cloneable
The main purpose of this implementation is that of wrapping cleanly the brute-force approach to the storage of a very small number of items: just put them into an array and scan linearly to find an item.
| Constructor and Description |
|---|
DoubleArraySet()
Creates a new empty array set.
|
DoubleArraySet(Collection<? extends Double> c)
Creates a new array set copying the contents of a given set.
|
DoubleArraySet(double[] a)
Creates a new array set using the given backing array.
|
DoubleArraySet(double[] a,
int size)
Creates a new array set using the given backing array and the given
number of elements of the array.
|
DoubleArraySet(DoubleCollection c)
Creates a new array set copying the contents of a given collection.
|
DoubleArraySet(int capacity)
Creates a new empty array set of given initial capacity.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
add(double k) |
void |
clear() |
DoubleArraySet |
clone()
Returns a deep copy of this set.
|
boolean |
contains(double k) |
boolean |
isEmpty() |
DoubleIterator |
iterator()
Returns a type-specific iterator on the elements of this collection.
|
boolean |
rem(double k)
|
int |
size() |
equals, hashCode, removeadd, addAll, addAll, contains, containsAll, containsAll, doubleIterator, rem, remove, removeAll, removeAll, retainAll, retainAll, toArray, toArray, toArray, toDoubleArray, toDoubleArray, toStringaddAll, containsAll, doubleIterator, removeAll, retainAll, toArray, toArray, toDoubleArray, toDoubleArrayadd, addAll, contains, containsAll, remove, removeAll, retainAll, spliterator, toArray, toArrayparallelStream, removeIf, streampublic DoubleArraySet(double[] a)
It is responsibility of the caller that the elements of a
are distinct.
a - the backing array.public DoubleArraySet()
public DoubleArraySet(int capacity)
capacity - the initial capacity.public DoubleArraySet(DoubleCollection c)
c - a collection.public DoubleArraySet(Collection<? extends Double> c)
c - a collection.public DoubleArraySet(double[] a,
int size)
It is responsibility of the caller that the first size
elements of a are distinct.
a - the backing array.size - the number of valid elements in a.public DoubleIterator iterator()
DoubleCollection
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 DoubleCollectioniterator in interface DoubleIterableiterator in interface DoubleSetiterator in interface Iterable<Double>iterator in interface Collection<Double>iterator in interface Set<Double>iterator in class AbstractDoubleSetpublic boolean contains(double k)
contains in interface DoubleCollectioncontains in class AbstractDoubleCollectionCollection.contains(Object)public int size()
size in interface Collection<Double>size in interface Set<Double>size in class AbstractCollection<Double>public boolean rem(double k)
DoubleCollectionremove(), but the clash with
the similarly named index-based method in the List
interface forces us to use a distinguished name. For simplicity, the set
interfaces reinstates remove().rem in interface DoubleCollectionrem in class AbstractDoubleCollectionCollection.remove(Object)public boolean add(double k)
add in interface DoubleCollectionadd in class AbstractDoubleCollectionCollection.add(Object)public void clear()
clear in interface Collection<Double>clear in interface Set<Double>clear in class AbstractCollection<Double>public boolean isEmpty()
isEmpty in interface Collection<Double>isEmpty in interface Set<Double>isEmpty in class AbstractDoubleCollectionpublic DoubleArraySet clone()
This method performs a deep copy of this hash set; the data stored in the set, however, is not cloned. Note that this makes a difference only for object keys.