|
Colt 1.2.0 | ||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object cern.colt.PersistentObject cern.colt.map.AbstractMap cern.colt.map.AbstractIntIntMap
Abstract base class for hash maps holding (key,value) associations of type (int-->int). First see the package summary and javadoc tree view to get the broad picture.
Implementation:
Almost all methods are expressed in terms of forEachKey(IntProcedure)
.
As such they are fully functional, but inefficient. Override them in subclasses if necessary.
HashMap
,
Serialized FormField Summary |
Fields inherited from class cern.colt.PersistentObject |
serialVersionUID |
Method Summary | |
boolean |
containsKey(int key)
Returns true if the receiver contains the specified key. |
boolean |
containsValue(int value)
Returns true if the receiver contains the specified value. |
AbstractIntIntMap |
copy()
Returns a deep copy of the receiver; uses clone() and casts the result. |
boolean |
equals(Object obj)
Compares the specified object with this map for equality. |
abstract boolean |
forEachKey(IntProcedure procedure)
Applies a procedure to each key of the receiver, if any. |
boolean |
forEachPair(IntIntProcedure procedure)
Applies a procedure to each (key,value) pair of the receiver, if any. |
abstract int |
get(int key)
Returns the value associated with the specified key. |
int |
keyOf(int value)
Returns the first key the given value is associated with. |
IntArrayList |
keys()
Returns a list filled with all keys contained in the receiver. |
void |
keys(IntArrayList list)
Fills all keys contained in the receiver into the specified list. |
void |
keysSortedByValue(IntArrayList keyList)
Fills all keys sorted ascending by their associated value into the specified list. |
void |
pairsMatching(IntIntProcedure condition,
IntArrayList keyList,
IntArrayList valueList)
Fills all pairs satisfying a given condition into the specified lists. |
void |
pairsSortedByKey(IntArrayList keyList,
IntArrayList valueList)
Fills all keys and values sorted ascending by key into the specified lists. |
void |
pairsSortedByValue(IntArrayList keyList,
IntArrayList valueList)
Fills all keys and values sorted ascending by value into the specified lists. |
abstract boolean |
put(int key,
int value)
Associates the given key with the given value. |
abstract boolean |
removeKey(int key)
Removes the given key with its associated element from the receiver, if present. |
String |
toString()
Returns a string representation of the receiver, containing the String representation of each key-value pair, sorted ascending by key. |
String |
toStringByValue()
Returns a string representation of the receiver, containing the String representation of each key-value pair, sorted ascending by value. |
IntArrayList |
values()
Returns a list filled with all values contained in the receiver. |
void |
values(IntArrayList list)
Fills all values contained in the receiver into the specified list. |
Methods inherited from class cern.colt.map.AbstractMap |
clear, ensureCapacity, isEmpty, size, trimToSize |
Methods inherited from class cern.colt.PersistentObject |
clone |
Methods inherited from class java.lang.Object |
getClass, hashCode, notify, notifyAll, wait, wait, wait |
Method Detail |
public boolean containsKey(int key)
public boolean containsValue(int value)
public AbstractIntIntMap copy()
clone()
and casts the result.
public boolean equals(Object obj)
m1.forEachPair( new IntIntProcedure() { public boolean apply(int key, int value) { return m2.containsKey(key) && m2.get(key) == value; } } ) && m2.forEachPair( new IntIntProcedure() { public boolean apply(int key, int value) { return m1.containsKey(key) && m1.get(key) == value; } } );This implementation first checks if the specified object is this map; if so it returns true. Then, it checks if the specified object is a map whose size is identical to the size of this set; if not, it it returns false. If so, it applies the iteration as described above.
obj
- object to be compared for equality with this map.
public abstract boolean forEachKey(IntProcedure procedure)
procedure
- the procedure to be applied. Stops iteration if the procedure returns false, otherwise continues.
public boolean forEachPair(IntIntProcedure procedure)
forEachKey(IntProcedure)
.
procedure
- the procedure to be applied. Stops iteration if the procedure returns false, otherwise continues.
public abstract int get(int key)
containsKey(int)
whether the given key has a value associated or not, i.e. whether there exists an association for the given key or not.
key
- the key to be searched for.
public int keyOf(int value)
containsValue(int)
whether there exists an association from a key to this value.
Search order is guaranteed to be identical to the order used by method forEachKey(IntProcedure)
.
value
- the value to search for.
public IntArrayList keys()
forEachKey(IntProcedure)
.
This method can be used to iterate over the keys of the receiver.
public void keys(IntArrayList list)
forEachKey(IntProcedure)
.
This method can be used to iterate over the keys of the receiver.
list
- the list to be filled, can have any size.public void keysSortedByValue(IntArrayList keyList)
Example:
keys = (8,7,6), values = (1,2,2) --> keyList = (8,6,7)
keyList
- the list to be filled, can have any size.public void pairsMatching(IntIntProcedure condition, IntArrayList keyList, IntArrayList valueList)
forEachKey(IntProcedure)
.
Example:
IntIntProcedure condition = new IntIntProcedure() { // match even keys only public boolean apply(int key, int value) { return key%2==0; } } keys = (8,7,6), values = (1,2,2) --> keyList = (6,8), valueList = (2,1)
condition
- the condition to be matched. Takes the current key as first and the current value as second argument.keyList
- the list to be filled with keys, can have any size.valueList
- the list to be filled with values, can have any size.public void pairsSortedByKey(IntArrayList keyList, IntArrayList valueList)
Example:
keys = (8,7,6), values = (1,2,2) --> keyList = (6,7,8), valueList = (2,2,1)
keyList
- the list to be filled with keys, can have any size.valueList
- the list to be filled with values, can have any size.public void pairsSortedByValue(IntArrayList keyList, IntArrayList valueList)
Example:
keys = (8,7,6), values = (1,2,2) --> keyList = (8,6,7), valueList = (1,2,2)
keyList
- the list to be filled with keys, can have any size.valueList
- the list to be filled with values, can have any size.public abstract boolean put(int key, int value)
key
- the key the value shall be associated with.value
- the value to be associated.
public abstract boolean removeKey(int key)
key
- the key to be removed from the receiver.
public String toString()
public String toStringByValue()
public IntArrayList values()
forEachKey(IntProcedure)
.
This method can be used to iterate over the values of the receiver.
public void values(IntArrayList list)
forEachKey(IntProcedure)
.
This method can be used to iterate over the values of the receiver.
list
- the list to be filled, can have any size.
|
Colt 1.2.0 | ||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |