Class LongIntHppcOpenHashMap

java.lang.Object
com.almworks.integers.AbstractWritableLongIntMap
com.almworks.integers.wrappers.LongIntHppcOpenHashMap
All Implemented Interfaces:
com.almworks.integers.LongIntIterable, com.almworks.integers.LongIntMap, com.almworks.integers.WritableLongIntMap, Iterable<com.almworks.integers.LongIntIterator>

public class LongIntHppcOpenHashMap extends com.almworks.integers.AbstractWritableLongIntMap
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected final com.carrotsearch.hppc.LongIntOpenHashMap
     

    Fields inherited from class com.almworks.integers.AbstractWritableLongIntMap

    myModCount

    Fields inherited from interface com.almworks.integers.LongIntMap

    DEFAULT_VALUE, EMPTY
  • Constructor Summary

    Constructors
    Constructor
    Description
     
    LongIntHppcOpenHashMap(int initialCapacity)
     
    LongIntHppcOpenHashMap(int initialCapacity, float loadFactor)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    int
    addTo(long key, int additionValue)
     
    void
     
    boolean
    containsKey(long key)
     
    createForAdd(int count)
    Creates new hashmap with default load factor
    createForAdd(int count, float loadFactor)
    Creates new hashmap with the specified load factor that is garanteed to not invoke resize after adding count elements
    createFrom(long[] keys, int[] values)
     
    createFrom(com.almworks.integers.LongIterable keys, com.almworks.integers.IntIterable values)
     
    int
    get(long key)
     
    @NotNull com.almworks.integers.LongIntIterator
     
    com.almworks.integers.LongIterator
     
    int
    Returns the last value saved in a call to containsKey(long).
    int
    lset(int value)
    Sets the value corresponding to the key saved in the last call to containsKey(long), if and only if the key exists in the map already.
    int
     
    protected int
    putImpl(long key, int value)
     
    int
    putOrAdd(long key, int putValue, int additionValue)
    Trove-inspired API method.
    boolean
    remove(long key, int value)
     
    protected int
    removeImpl(long key)
     
    int
     
    com.almworks.integers.IntIterator
     

    Methods inherited from class com.almworks.integers.AbstractWritableLongIntMap

    add, containsAnyKeys, containsKeys, equals, hashCode, isEmpty, keySet, modified, put, putAll, putAll, putAll, putAllKeys, putIfAbsent, remove, removeAll, removeAll, toString, toString, toTableString

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait

    Methods inherited from interface java.lang.Iterable

    forEach, spliterator
  • Field Details

    • myMap

      protected final com.carrotsearch.hppc.LongIntOpenHashMap myMap
  • Constructor Details

    • LongIntHppcOpenHashMap

      public LongIntHppcOpenHashMap()
    • LongIntHppcOpenHashMap

      public LongIntHppcOpenHashMap(int initialCapacity)
    • LongIntHppcOpenHashMap

      public LongIntHppcOpenHashMap(int initialCapacity, float loadFactor)
  • Method Details

    • createFrom

      public static LongIntHppcOpenHashMap createFrom(com.almworks.integers.LongIterable keys, com.almworks.integers.IntIterable values)
    • createFrom

      public static LongIntHppcOpenHashMap createFrom(long[] keys, int[] values)
    • createForAdd

      public static LongIntHppcOpenHashMap createForAdd(int count, float loadFactor)
      Creates new hashmap with the specified load factor that is garanteed to not invoke resize after adding count elements
      Returns:
      new hashmap with the specified capacity dependent on count and loadFactor
    • createForAdd

      public static LongIntHppcOpenHashMap createForAdd(int count)
      Creates new hashmap with default load factor
      See Also:
    • containsKey

      public boolean containsKey(long key)
    • size

      public int size()
    • iterator

      @NotNull public @NotNull com.almworks.integers.LongIntIterator iterator()
    • keysIterator

      public com.almworks.integers.LongIterator keysIterator()
    • valuesIterator

      public com.almworks.integers.IntIterator valuesIterator()
    • get

      public int get(long key)
    • clear

      public void clear()
    • putImpl

      protected int putImpl(long key, int value)
      Specified by:
      putImpl in class com.almworks.integers.AbstractWritableLongIntMap
    • putOrAdd

      public int putOrAdd(long key, int putValue, int additionValue)
      Trove-inspired API method. An equivalent of the following code:
        if (containsKey(key))
        {
            int v = (int) (lget() + additionValue);
            lset(v);
            return v;
        }
        else
        {
           put(key, putValue);
           return putValue;
        }
       
      Parameters:
      key - The key of the value to adjust.
      putValue - The value to put if key does not exist.
      additionValue - The value to add to the existing value if key exists.
      Returns:
      Returns the current value associated with key (after changes).
    • addTo

      public int addTo(long key, int additionValue)
    • lget

      public int lget()
      Returns the last value saved in a call to containsKey(long).
      See Also:
    • lset

      public int lset(int value)
      Sets the value corresponding to the key saved in the last call to containsKey(long), if and only if the key exists in the map already.
      Returns:
      Returns the previous value stored under the given key.
      See Also:
    • lslot

      public int lslot()
      Returns:
      Returns the slot of the last key looked up in a call to containsKey(long) if it returned true.
      See Also:
    • removeImpl

      protected int removeImpl(long key)
      Specified by:
      removeImpl in class com.almworks.integers.AbstractWritableLongIntMap
    • remove

      public boolean remove(long key, int value)
      Specified by:
      remove in interface com.almworks.integers.WritableLongIntMap
      Overrides:
      remove in class com.almworks.integers.AbstractWritableLongIntMap