Class UnsortedTableMap<K,V>
- java.lang.Object
-
- AbstractMap<K,V>
-
- UnsortedTableMap<K,V>
-
- All Implemented Interfaces:
- Map<K,V>
public class UnsortedTableMap<K,V> extends AbstractMap<K,V>
An implementation of a map using an unsorted table.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class and Description private class
UnsortedTableMap.EntryIterable
Iterator class for entries.private class
UnsortedTableMap.EntryIterator
Iterator class for entries.-
Nested classes/interfaces inherited from class AbstractMap
AbstractMap.MapEntry<K,V>
-
-
Field Summary
Fields Modifier and Type Field and Description private java.util.ArrayList<AbstractMap.MapEntry<K,V>>
table
Underlying storage for the map of entries.
-
Constructor Summary
Constructors Constructor and Description UnsortedTableMap()
Constructs an initially empty map.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description java.lang.Iterable<Entry<K,V>>
entrySet()
Returns an iterable collection of all key-value entries of the map.private int
findIndex(K key)
Returns the index of an entry with equal key, or -1 if none found.V
get(K key)
Returns the value associated with the specified key, or null if no such entry exists.V
put(K key, V value)
Associates the given value with the given key.V
remove(K key)
Removes the entry with the specified key, if present, and returns its value.int
size()
Returns the number of entries in the map.-
Methods inherited from class AbstractMap
isEmpty
-
-
-
-
Field Detail
-
table
private java.util.ArrayList<AbstractMap.MapEntry<K,V>> table
Underlying storage for the map of entries.
-
-
Method Detail
-
findIndex
private int findIndex(K key)
Returns the index of an entry with equal key, or -1 if none found.
-
size
public int size()
Returns the number of entries in the map.- Returns:
- number of entries in the map
-
get
public V get(K key)
Returns the value associated with the specified key, or null if no such entry exists.- Parameters:
key
- the key whose associated value is to be returned- Returns:
- the associated value, or null if no such entry exists
-
put
public V put(K key, V value)
Associates the given value with the given key. If an entry with the key was already in the map, this replaces the previous value with the new one and returns the old value. Otherwise, a new entry is added and null is returned.- Parameters:
key
- key with which the specified value is to be associatedvalue
- value to be associated with the specified key- Returns:
- the previous value associated with the key (or null, if no such entry)
-
remove
public V remove(K key)
Removes the entry with the specified key, if present, and returns its value. Otherwise does nothing and returns null.- Parameters:
key
- the key whose entry is to be removed from the map- Returns:
- the previous value associated with the removed key, or null if no such entry exists
-
-