Class SmallMap<K,V>

java.lang.Object
org.apache.pdfbox.util.SmallMap<K,V>
All Implemented Interfaces:
Map<K,V>

public class SmallMap<K,V> extends Object implements Map<K,V>
Map implementation with a smallest possible memory usage. It should only be used for maps with small number of items (e.g. <30) since most operations have an O(n) complexity. Thus it should be used in cases with large number of map objects, each having only few items.

null is not supported for keys or values.

  • Constructor Details

    • SmallMap

      public SmallMap()
      Creates empty map.
    • SmallMap

      public SmallMap(Map<? extends K,? extends V> initMap)
      Creates map filled with entries from provided map.
  • Method Details

    • size

      public int size()
      Specified by:
      size in interface Map<K,V>
    • isEmpty

      public boolean isEmpty()
      Specified by:
      isEmpty in interface Map<K,V>
    • containsKey

      public boolean containsKey(Object key)
      Specified by:
      containsKey in interface Map<K,V>
    • containsValue

      public boolean containsValue(Object value)
      Specified by:
      containsValue in interface Map<K,V>
    • get

      public V get(Object key)
      Specified by:
      get in interface Map<K,V>
    • put

      public V put(K key, V value)
      Specified by:
      put in interface Map<K,V>
    • remove

      public V remove(Object key)
      Specified by:
      remove in interface Map<K,V>
    • putAll

      public final void putAll(Map<? extends K,? extends V> otherMap)
      Specified by:
      putAll in interface Map<K,V>
    • clear

      public void clear()
      Specified by:
      clear in interface Map<K,V>
    • keySet

      public Set<K> keySet()
      Returns a set view of the keys contained in this map.

      The current implementation does not allow changes to the returned key set (which would have to be reflected in the underlying map.

      Specified by:
      keySet in interface Map<K,V>
    • values

      public Collection<V> values()
      Returns a collection of the values contained in this map.

      The current implementation does not allow changes to the returned collection (which would have to be reflected in the underlying map.

      Specified by:
      values in interface Map<K,V>
    • entrySet

      public Set<Map.Entry<K,V>> entrySet()
      Specified by:
      entrySet in interface Map<K,V>