|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Object | +--net.rim.device.api.util.IntIntHashtable
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 Object.hashCode() and
Object.equals(java.lang.Object) methods.
A 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 invoking rehash(). 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);
}
This hashtable implementation is significantly more object-efficient than
the original JDK version. However, for hashtables mapping integers to
objects or integers to integers, see
IntHashtable and
IntIntHashtable.
| Constructor Summary | ||
IntIntHashtable()
Construct a new, empty hashtable with a default capacity and load factor. |
||
IntIntHashtable(int initialCapacity)
Construct a new, empty hashtable with the specified capacity. |
||
| Method Summary | ||
void |
clear()
Flush this hashtable. |
|
boolean |
contains(int value)
Determines if some key maps into the specified value in this hashtable. |
|
boolean |
containsKey(int key)
Determines if the argument specified is a key in this hashtable. |
|
IntEnumeration |
elements()
Retrieves an enumeration of the values in this hashtable. |
|
int |
get(int key)
Retrieves value by key. |
|
boolean |
isEmpty()
Determines if this hashtable maps no keys to values. |
|
IntEnumeration |
keys()
Retrieves an enumeration of the keys in this hashtable. |
|
int |
put(int key,
int value)
Maps value to key in this hashtable. |
|
protected void |
rehash()
Rehashes the contents of this hashtable. |
|
int |
remove(int key)
Removes value by key. |
|
int |
size()
Retrieves the number of keys in this hashtable. |
|
| Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
public IntIntHashtable()
public IntIntHashtable(int initialCapacity)
initialCapacity - Initial capacity of the hashtable.IllegalArgumentException - If the initial capacity is less than
zero| Method Detail |
public void clear()
Invoke this method to remove all keys and values from this hashtable.
public boolean contains(int value)
This operation is more expensive than containsKey(int).
value - Value to search for.NullPointerException - If null value provided.public boolean containsKey(int key)
key - Key to test.contains(int)public IntEnumeration elements()
Use the Enumeration methods on the returned object to fetch the elements sequentially.
Enumeration,
keys()public int get(int key)
key - Key in this hashtable.public boolean isEmpty()
public IntEnumeration keys()
Enumeration,
elements()
public int put(int key,
int value)
The value can be retrieved by invoking get(int) with a key that
is equal to the original key.
key - Key to associate with the value.value - Value to put into table.NullPointerException - If null key or null value.protected void rehash()
Invoke this method to rehash this hashtable into one with a larger capacity. This hashtable invokes this method automatically when the number of keys exceeds its capacity and load factor.
public int remove(int key)
If the key does not exist in this hashtable, then this method does nothing.
key - Key for value to remove.public int size()
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
Copyright 1999-2008 Research In Motion Limited. 295 Phillip Street, Waterloo, Ontario, Canada, N2L 3W8. All Rights Reserved.
Copyright 1993-2003 Sun Microsystems, Inc. 901 San Antonio Road, Palo Alto, California, 94303, U.S.A.
Copyright 2002-2003 Nokia Corporation All Rights Reserved.
Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.