GNU Trove

gnu.trove.set.hash
Class TByteHashSet

java.lang.Object
  extended by gnu.trove.impl.hash.THash
      extended by gnu.trove.impl.hash.TPrimitiveHash
          extended by gnu.trove.impl.hash.TByteHash
              extended by gnu.trove.set.hash.TByteHashSet
All Implemented Interfaces:
TByteSet, TByteCollection, java.io.Externalizable, java.io.Serializable

public class TByteHashSet
extends gnu.trove.impl.hash.TByteHash
implements TByteSet, java.io.Externalizable

An open addressed set implementation for byte primitives.

See Also:
Serialized Form

Field Summary
 
Fields inherited from class gnu.trove.impl.hash.TByteHash
_set, consumeFreeSlot, no_entry_value
 
Fields inherited from class gnu.trove.impl.hash.TPrimitiveHash
_states, FREE, FULL, REMOVED
 
Fields inherited from class gnu.trove.impl.hash.THash
_autoCompactionFactor, _autoCompactRemovesRemaining, _autoCompactTemporaryDisable, _free, _loadFactor, _maxSize, _size, DEFAULT_CAPACITY, DEFAULT_LOAD_FACTOR
 
Constructor Summary
TByteHashSet()
          Creates a new TByteHashSet instance with the default capacity and load factor.
TByteHashSet(byte[] array)
          Creates a new TByteHashSet instance containing the elements of array.
TByteHashSet(java.util.Collection<? extends java.lang.Byte> collection)
          Creates a new TByteHashSet instance that is a copy of the existing Collection.
TByteHashSet(int initialCapacity)
          Creates a new TByteHashSet instance with a prime capacity equal to or greater than initialCapacity and with the default load factor.
TByteHashSet(int initialCapacity, float load_factor)
          Creates a new TIntHash instance with a prime value at or near the specified capacity and load factor.
TByteHashSet(int initial_capacity, float load_factor, byte no_entry_value)
          Creates a new TByteHashSet instance with a prime capacity equal to or greater than initial_capacity and with the specified load factor.
TByteHashSet(TByteCollection collection)
          Creates a new TByteHashSet instance that is a copy of the existing set.
 
Method Summary
 boolean add(byte val)
          Inserts a value into the set.
 boolean addAll(byte[] array)
          Adds all of the elements in the array to the set.
 boolean addAll(java.util.Collection<? extends java.lang.Byte> collection)
          Adds all of the elements in collection to the set.
 boolean addAll(TByteCollection collection)
          Adds all of the elements in the TByteCollection to the set.
 void clear()
          Empties the collection.
 boolean containsAll(byte[] array)
          Tests the set to determine if all of the elements in array are present.
 boolean containsAll(java.util.Collection<?> collection)
          Tests the set to determine if all of the elements in collection are present.
 boolean containsAll(TByteCollection collection)
          Tests the set to determine if all of the elements in TByteCollection are present.
 boolean equals(java.lang.Object other)
          Compares the specified object with this set for equality.
 int hashCode()
          Returns the hash code value for this set.
 TByteIterator iterator()
          Creates an iterator over the values of the set.
 void readExternal(java.io.ObjectInput in)
          
protected  void rehash(int newCapacity)
          Rehashes the set.
 boolean remove(byte val)
          Removes entry from the set.
 boolean removeAll(byte[] array)
          Removes all of the elements in array from the set.
 boolean removeAll(java.util.Collection<?> collection)
          Removes all of the elements in collection from the set.
 boolean removeAll(TByteCollection collection)
          Removes all of the elements in TByteCollection from the set.
 boolean retainAll(byte[] array)
          Removes any values in the set which are not contained in array.
 boolean retainAll(java.util.Collection<?> collection)
          Removes any values in the set which are not contained in collection.
 boolean retainAll(TByteCollection collection)
          Removes any values in the set which are not contained in TByteCollection.
 byte[] toArray()
          Returns an array containing all of the elements in this set.
 byte[] toArray(byte[] dest)
          Returns an array containing elements in this set.
 java.lang.String toString()
          
 void writeExternal(java.io.ObjectOutput out)
          
 
Methods inherited from class gnu.trove.impl.hash.TByteHash
contains, forEach, getNoEntryValue, index, insertKey, removeAt, setUp
 
Methods inherited from class gnu.trove.impl.hash.TPrimitiveHash
capacity
 
Methods inherited from class gnu.trove.impl.hash.THash
calculateGrownCapacity, compact, computeMaxSize, computeNextAutoCompactionAmount, ensureCapacity, getAutoCompactionFactor, isEmpty, postInsertHook, reenableAutoCompaction, setAutoCompactionFactor, size, tempDisableAutoCompaction, trimToSize
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface gnu.trove.set.TByteSet
contains, forEach, getNoEntryValue, isEmpty, size
 

Constructor Detail

TByteHashSet

public TByteHashSet()
Creates a new TByteHashSet instance with the default capacity and load factor.


TByteHashSet

public TByteHashSet(int initialCapacity)
Creates a new TByteHashSet instance with a prime capacity equal to or greater than initialCapacity and with the default load factor.

Parameters:
initialCapacity - an int value

TByteHashSet

public TByteHashSet(int initialCapacity,
                    float load_factor)
Creates a new TIntHash instance with a prime value at or near the specified capacity and load factor.

Parameters:
initialCapacity - used to find a prime capacity for the table.
load_factor - used to calculate the threshold over which rehashing takes place.

TByteHashSet

public TByteHashSet(int initial_capacity,
                    float load_factor,
                    byte no_entry_value)
Creates a new TByteHashSet instance with a prime capacity equal to or greater than initial_capacity and with the specified load factor.

Parameters:
initial_capacity - an int value
load_factor - a float value
no_entry_value - a byte value that represents null.

TByteHashSet

public TByteHashSet(java.util.Collection<? extends java.lang.Byte> collection)
Creates a new TByteHashSet instance that is a copy of the existing Collection.

Parameters:
collection - a Collection that will be duplicated.

TByteHashSet

public TByteHashSet(TByteCollection collection)
Creates a new TByteHashSet instance that is a copy of the existing set.

Parameters:
collection - a TByteSet that will be duplicated.

TByteHashSet

public TByteHashSet(byte[] array)
Creates a new TByteHashSet instance containing the elements of array.

Parameters:
array - an array of byte primitives
Method Detail

iterator

public TByteIterator iterator()
Creates an iterator over the values of the set. The iterator supports element deletion.

Specified by:
iterator in interface TByteSet
Specified by:
iterator in interface TByteCollection
Returns:
an TByteIterator value

toArray

public byte[] toArray()
Returns an array containing all of the elements in this set. If this set makes any guarantees as to what order its elements are returned by its iterator, this method must return the elements in the same order.

The returned array will be "safe" in that no references to it are maintained by this set. (In other words, this method must allocate a new array even if this set is backed by an array). The caller is thus free to modify the returned array.

This method acts as bridge between array-based and collection-based APIs.

Specified by:
toArray in interface TByteSet
Specified by:
toArray in interface TByteCollection
Returns:
an array containing all the elements in this set

toArray

public byte[] toArray(byte[] dest)
Returns an array containing elements in this set.

If this set fits in the specified array with room to spare (i.e., the array has more elements than this set), the element in the array immediately following the end of the set is set to TByteSet.getNoEntryValue(). (This is useful in determining the length of this set only if the caller knows that this set does not contain any elements representing null.)

If the native array is smaller than the set size, the array will be filled with elements in Iterator order until it is full and exclude the remainder.

If this set makes any guarantees as to what order its elements are returned by its iterator, this method must return the elements in the same order.

Specified by:
toArray in interface TByteSet
Specified by:
toArray in interface TByteCollection
Parameters:
dest - the array into which the elements of this set are to be stored.
Returns:
an byte[] containing all the elements in this set

add

public boolean add(byte val)
Inserts a value into the set.

Specified by:
add in interface TByteSet
Specified by:
add in interface TByteCollection
Parameters:
val - a byte value
Returns:
true if the set was modified by the add operation

remove

public boolean remove(byte val)
Removes entry from the set.

Specified by:
remove in interface TByteSet
Specified by:
remove in interface TByteCollection
Parameters:
val - an byte value
Returns:
true if the set was modified by the remove operation.

containsAll

public boolean containsAll(java.util.Collection<?> collection)
Tests the set to determine if all of the elements in collection are present.

Specified by:
containsAll in interface TByteSet
Specified by:
containsAll in interface TByteCollection
Parameters:
collection - a Collection value
Returns:
true if all elements were present in the set.

containsAll

public boolean containsAll(TByteCollection collection)
Tests the set to determine if all of the elements in TByteCollection are present.

Specified by:
containsAll in interface TByteSet
Specified by:
containsAll in interface TByteCollection
Parameters:
collection - a TByteCollection value
Returns:
true if all elements were present in the set.

containsAll

public boolean containsAll(byte[] array)
Tests the set to determine if all of the elements in array are present.

Specified by:
containsAll in interface TByteSet
Specified by:
containsAll in interface TByteCollection
Parameters:
array - as array of byte primitives.
Returns:
true if all elements were present in the set.

addAll

public boolean addAll(java.util.Collection<? extends java.lang.Byte> collection)
Adds all of the elements in collection to the set.

Specified by:
addAll in interface TByteSet
Specified by:
addAll in interface TByteCollection
Parameters:
collection - a Collection value
Returns:
true if the set was modified by the add all operation.

addAll

public boolean addAll(TByteCollection collection)
Adds all of the elements in the TByteCollection to the set.

Specified by:
addAll in interface TByteSet
Specified by:
addAll in interface TByteCollection
Parameters:
collection - a TByteCollection value
Returns:
true if the set was modified by the add all operation.

addAll

public boolean addAll(byte[] array)
Adds all of the elements in the array to the set.

Specified by:
addAll in interface TByteSet
Specified by:
addAll in interface TByteCollection
Parameters:
array - a array of byte primitives.
Returns:
true if the set was modified by the add all operation.

retainAll

public boolean retainAll(java.util.Collection<?> collection)
Removes any values in the set which are not contained in collection.

Specified by:
retainAll in interface TByteSet
Specified by:
retainAll in interface TByteCollection
Parameters:
collection - a Collection value
Returns:
true if the set was modified by the retain all operation

retainAll

public boolean retainAll(TByteCollection collection)
Removes any values in the set which are not contained in TByteCollection.

Specified by:
retainAll in interface TByteSet
Specified by:
retainAll in interface TByteCollection
Parameters:
collection - a TByteCollection value
Returns:
true if the set was modified by the retain all operation

retainAll

public boolean retainAll(byte[] array)
Removes any values in the set which are not contained in array.

Specified by:
retainAll in interface TByteSet
Specified by:
retainAll in interface TByteCollection
Parameters:
array - an array of byte primitives.
Returns:
true if the set was modified by the retain all operation

removeAll

public boolean removeAll(java.util.Collection<?> collection)
Removes all of the elements in collection from the set.

Specified by:
removeAll in interface TByteSet
Specified by:
removeAll in interface TByteCollection
Parameters:
collection - a Collection value
Returns:
true if the set was modified by the remove all operation.

removeAll

public boolean removeAll(TByteCollection collection)
Removes all of the elements in TByteCollection from the set.

Specified by:
removeAll in interface TByteSet
Specified by:
removeAll in interface TByteCollection
Parameters:
collection - a TByteCollection value
Returns:
true if the set was modified by the remove all operation.

removeAll

public boolean removeAll(byte[] array)
Removes all of the elements in array from the set.

Specified by:
removeAll in interface TByteSet
Specified by:
removeAll in interface TByteCollection
Parameters:
array - an array of byte primitives.
Returns:
true if the set was modified by the remove all operation.

clear

public void clear()
Empties the collection.

Specified by:
clear in interface TByteSet
Specified by:
clear in interface TByteCollection
Overrides:
clear in class gnu.trove.impl.hash.THash

rehash

protected void rehash(int newCapacity)
Rehashes the set.

Specified by:
rehash in class gnu.trove.impl.hash.THash
Parameters:
newCapacity - an int value

equals

public boolean equals(java.lang.Object other)
Compares the specified object with this set for equality. Returns true if the specified object is also a set, the two sets have the same size, and every member of the specified set is contained in this set (or equivalently, every member of this set is contained in the specified set). This definition ensures that the equals method works properly across different implementations of the set interface.

Specified by:
equals in interface TByteSet
Specified by:
equals in interface TByteCollection
Overrides:
equals in class java.lang.Object
Parameters:
other - object to be compared for equality with this set
Returns:
true if the specified object is equal to this set

hashCode

public int hashCode()
Returns the hash code value for this set. The hash code of a set is defined to be the sum of the hash codes of the elements in the set. This ensures that s1.equals(s2) implies that s1.hashCode()==s2.hashCode() for any two sets s1 and s2, as required by the general contract of Object.hashCode().

Specified by:
hashCode in interface TByteSet
Specified by:
hashCode in interface TByteCollection
Overrides:
hashCode in class java.lang.Object
Returns:
the hash code value for this set
See Also:
Object.equals(Object), Set.equals(Object)

toString

public java.lang.String toString()

Overrides:
toString in class java.lang.Object

writeExternal

public void writeExternal(java.io.ObjectOutput out)
                   throws java.io.IOException

Specified by:
writeExternal in interface java.io.Externalizable
Overrides:
writeExternal in class gnu.trove.impl.hash.THash
Throws:
java.io.IOException

readExternal

public void readExternal(java.io.ObjectInput in)
                  throws java.io.IOException,
                         java.lang.ClassNotFoundException

Specified by:
readExternal in interface java.io.Externalizable
Overrides:
readExternal in class gnu.trove.impl.hash.THash
Throws:
java.io.IOException
java.lang.ClassNotFoundException

GNU Trove