public class IntArraySet extends AbstractIntSet 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 |
|---|
IntArraySet()
Creates a new empty array set.
|
IntArraySet(Collection<? extends Integer> c)
Creates a new array set copying the contents of a given set.
|
IntArraySet(int capacity)
Creates a new empty array set of given initial capacity.
|
IntArraySet(int[] a)
Creates a new array set using the given backing array.
|
IntArraySet(int[] a,
int size)
Creates a new array set using the given backing array and the given
number of elements of the array.
|
IntArraySet(IntCollection c)
Creates a new array set copying the contents of a given collection.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
add(int k) |
void |
clear() |
IntArraySet |
clone()
Returns a deep copy of this set.
|
boolean |
contains(int k) |
boolean |
isEmpty() |
IntIterator |
iterator()
Returns a type-specific iterator on the elements of this collection.
|
boolean |
rem(int k)
|
int |
size() |
equals, hashCode, removeadd, addAll, addAll, contains, containsAll, containsAll, intIterator, rem, remove, removeAll, removeAll, retainAll, retainAll, toArray, toArray, toArray, toIntArray, toIntArray, toStringaddAll, containsAll, intIterator, removeAll, retainAll, toArray, toArray, toIntArray, toIntArrayadd, addAll, contains, containsAll, remove, removeAll, retainAll, spliterator, toArray, toArrayparallelStream, removeIf, streampublic IntArraySet(int[] a)
It is responsibility of the caller that the elements of a
are distinct.
a - the backing array.public IntArraySet()
public IntArraySet(int capacity)
capacity - the initial capacity.public IntArraySet(IntCollection c)
c - a collection.public IntArraySet(Collection<? extends Integer> c)
c - a collection.public IntArraySet(int[] 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 IntIterator 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 IntCollectioniterator in interface IntIterableiterator in interface IntSetiterator in interface Iterable<Integer>iterator in interface Collection<Integer>iterator in interface Set<Integer>iterator in class AbstractIntSetpublic boolean contains(int k)
contains in interface IntCollectioncontains in class AbstractIntCollectionCollection.contains(Object)public int size()
size in interface Collection<Integer>size in interface Set<Integer>size in class AbstractCollection<Integer>public boolean rem(int k)
IntCollectionremove(), 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 IntCollectionrem in class AbstractIntCollectionCollection.remove(Object)public boolean add(int k)
add in interface IntCollectionadd in class AbstractIntCollectionCollection.add(Object)public void clear()
clear in interface Collection<Integer>clear in interface Set<Integer>clear in class AbstractCollection<Integer>public boolean isEmpty()
isEmpty in interface Collection<Integer>isEmpty in interface Set<Integer>isEmpty in class AbstractIntCollectionpublic IntArraySet 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.