org.gudy.azureus2.core3.util
Class LightHashSet

java.lang.Object
  extended by java.util.AbstractCollection<E>
      extended by java.util.AbstractSet
          extended by org.gudy.azureus2.core3.util.LightHashSet
All Implemented Interfaces:
Cloneable, Iterable, Collection, Set

public class LightHashSet
extends AbstractSet
implements Cloneable

A lighter (on memory) hash set
Advantages over HashSet:

Disadvantages:

Author:
Aaron Grunthal

Constructor Summary
LightHashSet()
           
LightHashSet(Collection c)
           
LightHashSet(int initialCapacity)
           
LightHashSet(int initialCapacity, float loadFactor)
           
 
Method Summary
 boolean add(Object key)
           
 boolean addAll(Collection c)
           
 int capacity()
           
 void clear()
           
 Object clone()
           
 void compactify(float compactingLoadFactor)
          will shrink the internal storage size to the least possible amount, should be used after removing many entries for example
 boolean contains(Object key)
           
 Object get(Object key)
          Fetches an element which does equal() the provided object but is not necessarily the same object
 Iterator iterator()
           
static void main(String[] args)
           
 boolean remove(Object key)
           
 int size()
           
 
Methods inherited from class java.util.AbstractSet
equals, hashCode, removeAll
 
Methods inherited from class java.util.AbstractCollection
containsAll, isEmpty, retainAll, toArray, toArray, toString
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.util.Set
containsAll, isEmpty, retainAll, toArray, toArray
 

Constructor Detail

LightHashSet

public LightHashSet()

LightHashSet

public LightHashSet(int initialCapacity)

LightHashSet

public LightHashSet(Collection c)

LightHashSet

public LightHashSet(int initialCapacity,
                    float loadFactor)
Method Detail

clone

public Object clone()
Overrides:
clone in class Object

iterator

public Iterator iterator()
Specified by:
iterator in interface Iterable
Specified by:
iterator in interface Collection
Specified by:
iterator in interface Set
Specified by:
iterator in class AbstractCollection

add

public boolean add(Object key)
Specified by:
add in interface Collection
Specified by:
add in interface Set
Overrides:
add in class AbstractCollection

size

public int size()
Specified by:
size in interface Collection
Specified by:
size in interface Set
Specified by:
size in class AbstractCollection

addAll

public boolean addAll(Collection c)
Specified by:
addAll in interface Collection
Specified by:
addAll in interface Set
Overrides:
addAll in class AbstractCollection

capacity

public int capacity()

get

public Object get(Object key)
Fetches an element which does equal() the provided object but is not necessarily the same object

Parameters:
Object - to retrieve
Returns:
an object fulfilling the equals contract or null if no such object was found in this set

remove

public boolean remove(Object key)
Specified by:
remove in interface Collection
Specified by:
remove in interface Set
Overrides:
remove in class AbstractCollection

clear

public void clear()
Specified by:
clear in interface Collection
Specified by:
clear in interface Set
Overrides:
clear in class AbstractCollection

contains

public boolean contains(Object key)
Specified by:
contains in interface Collection
Specified by:
contains in interface Set
Overrides:
contains in class AbstractCollection

compactify

public void compactify(float compactingLoadFactor)
will shrink the internal storage size to the least possible amount, should be used after removing many entries for example

Parameters:
compactingLoadFactor - load factor for the compacting operation. Use 0f to compact with the load factor specified during instantiation. Use negative values of the desired load factors to compact only when it would reduce the storage size.

main

public static void main(String[] args)