net.sf.saxon.sort

Class IntToIntHashMap

Implemented Interfaces:
Serializable

public class IntToIntHashMap
extends java.lang.Object
implements Serializable

A hash table that maps int keys to int values.
Authors:
Dave Hale, Landmark Graphics
Dominique Devienne
Michael Kay: created this class based on IntHashMap

Constructor Summary

IntToIntHashMap()
Initializes a map with a capacity of 8 and a load factor of 0,25.
IntToIntHashMap(int capacity)
Initializes a map with the given capacity and a load factor of 0,25.
IntToIntHashMap(int capacity, double factor)
Constructs a new map with initial capacity, and load factor.

Method Summary

void
clear()
Clears the map.
boolean
find(int key)
Finds a key in the map.
int
get(int key)
Gets the value for this key.
int
getDefaultValue()
Get the default value used to indicate an unused entry
IntIterator
keyIterator()
Get an iterator over the integer key values held in the hash map
void
put(int key, int value)
Adds a key-value pair to the map.
boolean
remove(int key)
Removes a key from the map.
void
setDefaultValue(int defaultValue)
Set the value to be returned to indicate an unused entry
int
size()
Gets the size of the map.

Constructor Details

IntToIntHashMap

public IntToIntHashMap()
Initializes a map with a capacity of 8 and a load factor of 0,25.

IntToIntHashMap

public IntToIntHashMap(int capacity)
Initializes a map with the given capacity and a load factor of 0,25.
Parameters:
capacity - the initial capacity.

IntToIntHashMap

public IntToIntHashMap(int capacity,
                       double factor)
Constructs a new map with initial capacity, and load factor.

The capacity is the number of keys that can be mapped without resizing the arrays in which keys and values are stored. For efficiency, only a fraction of the elements in those arrays are used. That fraction is the specified load factor. The initial length of the arrays equals the smallest power of two not less than the ratio capacity/factor. The capacity of the map is increased, as necessary. The maximum number of keys that can be mapped is 2^30.

Parameters:
capacity - the initial capacity.
factor - the load factor.

Method Details

clear

public void clear()
Clears the map.

find

public boolean find(int key)
Finds a key in the map.
Parameters:
key - Key
Returns:
true if the key is mapped

get

public int get(int key)
Gets the value for this key.
Parameters:
key - Key
Returns:
the value, null if not found.

getDefaultValue

public int getDefaultValue()
Get the default value used to indicate an unused entry

keyIterator

public IntIterator keyIterator()
Get an iterator over the integer key values held in the hash map
Returns:
an iterator whose next() call returns the key values (in arbitrary order)

put

public void put(int key,
                int value)
Adds a key-value pair to the map.
Parameters:
key - Key
value - Value

remove

public boolean remove(int key)
Removes a key from the map.
Parameters:
key - Key to remove
Returns:
true if the value was removed

setDefaultValue

public void setDefaultValue(int defaultValue)
Set the value to be returned to indicate an unused entry

size

public int size()
Gets the size of the map.
Returns:
the size