|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--ostore.util.IntHashtable
This class implements a hashtable, which maps keys to values. Any
non-null
object can be used as a key or as a value.
To successfully store and retrieve objects from a hashtable, the
objects used as keys must implement the hashCode
method and the equals
method.
An instance of Hashtable
has two parameters that
affect its efficiency: its capacity and its load
factor. The load factor should be between 0.0 and 1.0. When
the number of entries in the hashtable exceeds the product of the
load factor and the current capacity, the capacity is increased by
calling the rehash
method. Larger load factors use
memory more efficiently, at the expense of larger expected time
per lookup.
If many entries are to be made into a Hashtable
,
creating it with a sufficiently large capacity may allow the
entries to be inserted more efficiently than letting it perform
automatic rehashing as needed to grow the table.
This example creates a hashtable of numbers. It uses the names of the numbers as keys:
Hashtable numbers = new Hashtable(); numbers.put("one", new Integer(1)); numbers.put("two", new Integer(2)); numbers.put("three", new Integer(3));
To retrieve a number, use the following code:
Integer n = (Integer)numbers.get("two"); if (n != null) { System.out.println("two = " + n); }
Object.equals(java.lang.Object)
,
Object.hashCode()
,
Hashtable.rehash()
,
Serialized FormNested Class Summary | |
---|---|
class |
IntHashtable.IntHashtableEntry
|
class |
IntHashtable.KeyEnumerator
A hashtable enumerator class. |
Constructor Summary | |
---|---|
IntHashtable()
Constructs a new, empty hashtable with a default capacity and load factor. |
|
IntHashtable(int initialCapacity)
Constructs a new, empty hashtable with the specified initial capacity and default load factor. |
|
IntHashtable(int initialCapacity,
float loadFactor)
Constructs a new, empty hashtable with the specified initial capacity and the specified load factor. |
Method Summary | |
---|---|
void |
clear()
Clears this hashtable so that it contains no keys. |
Object |
clone()
Creates a shallow copy of this hashtable. |
boolean |
contains(Object value)
Tests if some key maps into the specified value in this hashtable. |
boolean |
containsKey(int key)
Tests if the specified object is a key in this hashtable. |
Enumeration |
elements()
Returns an enumeration of the values in this hashtable. |
Object |
get(int key)
Returns the value to which the specified key is mapped in this hashtable. |
boolean |
isEmpty()
Tests if this hashtable maps no keys to values. |
IntHashtable.KeyEnumerator |
keys()
Returns an enumeration of the keys in this hashtable. |
Object |
put(int key,
Object value)
Maps the specified key to the specified
value in this hashtable. |
protected void |
rehash()
Rehashes the contents of the hashtable into a hashtable with a larger capacity. |
Object |
remove(int key)
Removes the key (and its corresponding value) from this hashtable. |
int |
size()
Returns the number of keys in this hashtable. |
String |
toString()
Returns a rather long string representation of this hashtable. |
Methods inherited from class java.lang.Object |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
public IntHashtable(int initialCapacity, float loadFactor)
initialCapacity
- the initial capacity of the hashtable.loadFactor
- a number between 0.0 and 1.0.
IllegalArgumentException
- if the initial capacity is less
than or equal to zero, or if the load factor is less than
or equal to zero.public IntHashtable(int initialCapacity)
initialCapacity
- the initial capacity of the hashtable.public IntHashtable()
Method Detail |
public int size()
public boolean isEmpty()
true
if this hashtable maps no keys to values;
false
otherwise.public IntHashtable.KeyEnumerator keys()
Enumeration
,
Hashtable.elements()
public Enumeration elements()
Enumeration
,
Hashtable.keys()
public boolean contains(Object value)
containsKey
method.
value
- a value to search for.
true
if some key maps to the
value
argument in this hashtable;
false
otherwise.
NullPointerException
- if the value is null
.Hashtable.containsKey(java.lang.Object)
public boolean containsKey(int key)
key
- possible key.
true
if the specified object is a key in this
hashtable; false
otherwise.Hashtable.contains(java.lang.Object)
public Object get(int key)
key
- a key in the hashtable.
null
if the key is not mapped to any value in
this hashtable.Hashtable.put(java.lang.Object, java.lang.Object)
protected void rehash()
public Object put(int key, Object value)
key
to the specified
value
in this hashtable. Neither the key nor the
value can be null
.
The value can be retrieved by calling the get
method
with a key that is equal to the original key.
key
- the hashtable key.value
- the value.
null
if it did not have one.
NullPointerException
- if the key or value is
null
.Object.equals(java.lang.Object)
,
Hashtable.get(java.lang.Object)
public Object remove(int key)
key
- the key that needs to be removed.
null
if the key did not have a mapping.public void clear()
public Object clone()
clone
in class Object
public String toString()
toString
in class Object
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |