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)
Ensures that this collection contains the specified element (optional
operation).
|
void |
clear()
Removes all of the elements from this collection (optional operation).
|
DoubleArraySet |
clone()
Returns a deep copy of this set.
|
boolean |
contains(double k)
Returns
true if this collection contains the specified element. |
boolean |
isEmpty()
Returns true if this collection contains no elements.
|
DoubleIterator |
iterator()
Returns an iterator over the elements contained in this collection.
|
boolean |
remove(double k)
Removes an element from this set.
|
int |
size()
Returns the number of elements in this collection.
|
equals, hashCode, remadd, addAll, contains, containsAll, remove, removeAll, retainAll, toArray, toDoubleArray, toDoubleArray, toStringaddAll, containsAll, removeAll, retainAll, toArray, toArrayaddAll, containsAll, removeAll, retainAll, toArray, toDoubleArray, toDoubleArrayforEach, forEachaddAll, containsAll, 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()
java.util.AbstractCollectioniterator 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 AbstractDoubleSetIterable.iterator()public boolean contains(double k)
AbstractDoubleCollectiontrue if this collection contains the specified element.
This implementation iterates over the elements in the collection, looking for the specified element.
contains in interface DoubleCollectioncontains in class AbstractDoubleCollectionCollection.contains(Object)public int size()
java.util.Collectionsize in interface Collection<Double>size in interface Set<Double>size in class AbstractCollection<Double>public boolean remove(double k)
AbstractDoubleSet
Note that the corresponding method of a type-specific collection is
rem(). This unfortunate situation is caused by the clash with the
similarly named index-based method in the List
interface. Delegates to the type-specific rem() method
implemented by type-specific abstract Collection
superclass.
remove in interface DoubleSetremove in class AbstractDoubleSetCollection.remove(Object)public boolean add(double k)
AbstractDoubleCollection
This implementation always throws an
UnsupportedOperationException.
add in interface DoubleCollectionadd in class AbstractDoubleCollectionCollection.add(Object)public void clear()
java.util.AbstractCollectionThis implementation iterates over this collection, removing each element using the Iterator.remove operation. Most implementations will probably choose to override this method for efficiency.
Note that this implementation will throw an UnsupportedOperationException if the iterator returned by this collection's iterator method does not implement the remove method and this collection is non-empty.
clear in interface Collection<Double>clear in interface Set<Double>clear in class AbstractCollection<Double>public boolean isEmpty()
java.util.AbstractCollectionThis implementation returns size() == 0.
isEmpty in interface Collection<Double>isEmpty in interface Set<Double>isEmpty in class AbstractCollection<Double>public DoubleArraySet clone()
This method performs a deep copy of this array set; the data stored in the set, however, is not cloned. Note that this makes a difference only for object keys.