Interface MutableDoubleDoubleMap

All Superinterfaces:
DoubleDoubleMap, DoubleIterable, DoubleValuesMap, MutableDoubleValuesMap, PrimitiveIterable
All Known Implementing Classes:
DoubleDoubleHashMap, SynchronizedDoubleDoubleMap, UnmodifiableDoubleDoubleMap

public interface MutableDoubleDoubleMap
extends DoubleDoubleMap, MutableDoubleValuesMap
This file was automatically generated from template file mutablePrimitivePrimitiveMap.stg.
Since:
3.0.
  • Method Details

    • put

      void put​(double key, double value)
      Associates a value with the specified key. If a value is already associated with the key in this map, it will be replaced with value.
      Parameters:
      key - the key
      value - the value to associate with value
    • putPair

      default void putPair​(DoubleDoublePair keyValuePair)
      This method allows MutableDoubleDoubleMap the ability to add an element in the form of DoubleDoublePair.
      Since:
      9.1.0
      See Also:
      put(double, double)
    • putAll

      void putAll​(DoubleDoubleMap map)
      Puts all of the key/value mappings from the specified map into this map. If this map already has a value associated with one of the keys in the map, it will be replaced with the value in map.
      Parameters:
      map - the map to copy into this map
    • updateValues

      void updateValues​(DoubleDoubleToDoubleFunction function)
      Updates the values in-place.
      Parameters:
      function - that takes a key and its value and that returns a new value for this key
      Since:
      10.0
    • removeKey

      void removeKey​(double key)
      Removes the mapping associated with the key, if one exists, from the map.
      Parameters:
      key - the key to remove
      See Also:
      remove(double)
    • remove

      void remove​(double key)
      Removes the mapping associated with the key, if one exists, from the map.
      Parameters:
      key - the key to remove
      See Also:
      removeKey(double)
    • removeKeyIfAbsent

      double removeKeyIfAbsent​(double key, double value)
      Removes the mapping associated with the key, if one exists, from the map, returning the previously associated value with the key. If no mapping existed for the key, the specified default value is returned.
      Parameters:
      key - the key to remove
      value - the default value to return if no mapping for the key exists
      Returns:
      the value previously associated with the key, if one existed, or value if not
    • getIfAbsentPut

      double getIfAbsentPut​(double key, double value)
      Retrieves the value associated with the key if one exists; if it does not, associates a value with the key.
      Parameters:
      key - the key
      value - the value to associate with key if no such mapping exists
      Returns:
      the value associated with key, if one exists, or value if not
    • getIfAbsentPut

      double getIfAbsentPut​(double key, DoubleFunction0 function)
      Retrieves the value associated with the key if one exists; if it does not, invokes the supplier and associates the result with the key.
      Parameters:
      key - the key
      function - the supplier that provides the value if no mapping exists for key
      Returns:
      the value associated with the key, if one exists, or the result of invoking function if not
    • getIfAbsentPutWithKey

      double getIfAbsentPutWithKey​(double key, DoubleToDoubleFunction function)
      Retrieves the value associated with the key if one exists; if it does not, associates the result of invoking the value function with the key.
      Parameters:
      key - the key
      function - the function that provides the value if no mapping exists. The key will be passed as the argument to the function.
      Returns:
      the value associated with the key, if one exists, or the result of invoking function with key if not
    • getIfAbsentPutWith

      <P> double getIfAbsentPutWith​(double key, DoubleFunction<? super P> function, P parameter)
      Retrieves the value associated with the key if one exists; if it does not, invokes the value function with the parameter and associates the result with the key.
      Type Parameters:
      P - the type of the value function's parameter
      Parameters:
      key - the key
      function - the function that provides the value if no mapping exists. The specified parameter will be passed as the argument to the function.
      parameter - the parameter to provide to function if no value exists for key
      Returns:
      the value associated with the key, if one exists, or the result of invoking function with parameter if not
    • updateValue

      double updateValue​(double key, double initialValueIfAbsent, DoubleToDoubleFunction function)
      Updates or sets the value associated with the key by applying the function to the existing value, if one exists, or to the specified initial value if one does not.
      Parameters:
      key - the key
      initialValueIfAbsent - the initial value to supply to the function if no mapping exists for the key
      function - the function that returns the updated value based on the current value or the initial value, if no value exists
      Returns:
      the new value associated with the key, either as a result of applying function to the value already associated with the key or as a result of applying it to initialValueIfAbsent and associating the result with key
    • flipUniqueValues

      MutableDoubleDoubleMap flipUniqueValues()
      Description copied from interface: DoubleDoubleMap
      Return the DoubleDoubleMap that is obtained by flipping the direction of this map and making the associations from value to key.
      Specified by:
      flipUniqueValues in interface DoubleDoubleMap
    • select

      Description copied from interface: DoubleDoubleMap
      Return a copy of this map containing only the key/value pairs that match the predicate.
      Specified by:
      select in interface DoubleDoubleMap
      Parameters:
      predicate - the predicate to determine which key/value pairs in this map should be included in the returned map
      Returns:
      a copy of this map with the matching key/value pairs
    • reject

      Description copied from interface: DoubleDoubleMap
      Return a copy of this map containing only the key/value pairs that do not match the predicate.
      Specified by:
      reject in interface DoubleDoubleMap
      Parameters:
      predicate - the predicate to determine which key/value pairs in this map should be excluded from the returned map
      Returns:
      a copy of this map without the matching key/value pairs
    • withKeyValue

      MutableDoubleDoubleMap withKeyValue​(double key, double value)
      Associates a value with the specified key. If a value is already associated with the key in this map, it will be replaced with value.
      Parameters:
      key - the key
      value - the value to associate with value
      Returns:
      this map
      See Also:
      put(double, double)
    • withoutKey

      MutableDoubleDoubleMap withoutKey​(double key)
      Removes the mapping associated with the key, if one exists, from this map.
      Parameters:
      key - the key to remove
      Returns:
      this map
      See Also:
      remove(double)
    • withoutAllKeys

      MutableDoubleDoubleMap withoutAllKeys​(DoubleIterable keys)
      Removes the mappings associated with all the keys, if they exist, from this map.
      Parameters:
      keys - the keys to remove
      Returns:
      this map
      See Also:
      remove(double)
    • withAllKeyValues

      default MutableDoubleDoubleMap withAllKeyValues​(Iterable<DoubleDoublePair> keyValuePairs)
      Puts all of the key/value mappings from the specified pairs into this map. If this map already has a value associated with one of the keys in the pairs, it will be replaced with the value in the pair.
      Parameters:
      iterable - the pairs to put into this map
      Returns:
      this map
      See Also:
      putPair(DoubleDoublePair)
    • asUnmodifiable

      MutableDoubleDoubleMap asUnmodifiable()
      Returns an unmodifiable view of this map, delegating all read-only operations to this map and throwing an UnsupportedOperationException for all mutating operations. This avoids the overhead of copying the map when calling DoubleDoubleMap.toImmutable() while still providing immutability.
      Returns:
      an unmodifiable view of this map
    • asSynchronized

      MutableDoubleDoubleMap asSynchronized()
      Returns a synchronized view of this map, delegating all operations to this map but ensuring only one caller has access to the map at a time.
      Returns:
      a synchronized view of this map
    • addToValue

      double addToValue​(double key, double toBeAdded)
      Increments and updates the value associated with the key, if a value exists, or sets the value to be the specified value if one does not.
      Parameters:
      key - the key
      toBeAdded - the amount to increment the existing value, if one exists, or to use as the initial value if one does not
      Returns:
      the value after incrementing toBeAdded to the existing value associated with key or toBeAdded if one does not