Class 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.
    • 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 java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • table

        private java.util.ArrayList<AbstractMap.MapEntry<K,V>> table
        Underlying storage for the map of entries.
    • Constructor Detail

      • UnsortedTableMap

        public UnsortedTableMap()
        Constructs an initially empty map.
    • 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 associated
        value - 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
      • entrySet

        public java.lang.Iterable<Entry<K,V>> entrySet()
        Returns an iterable collection of all key-value entries of the map.
        Returns:
        iterable collection of the map's entries