All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.carrotsearch.hppcrt.ByteFloatMap Maven / Gradle / Ivy

Go to download

High Performance Primitive Collections Realtime (fork of HPPC from Carrotsearch) Fundamental data structures (maps, sets, lists, queues, heaps, sorts) generated for combinations of object and primitive types to conserve JVM memory and speed up execution. The Realtime fork intends to extend the existing collections, by tweaking to remove any dynamic allocations at runtime, and to obtain low variance execution times whatever the input nature.

There is a newer version: 0.7.5
Show newest version
package com.carrotsearch.hppcrt;

import com.carrotsearch.hppcrt.cursors.ByteFloatCursor;

/**
 * An associative container with unique binding from keys to a single value.
 */
  
 @javax.annotation.Generated(date = "2014-10-25T20:54:14+0200", value = "HPPC-RT generated from: ByteFloatMap.java") 
public interface ByteFloatMap
extends ByteFloatAssociativeContainer
{
    /**
     * Place a given key and value in the container.
     * @return Returns the value previously stored under the given key in the map if an equal key is part of the map, and replaces the existing
     *  value only  with the argument value. If no previous key existed,
     * the default value is returned and the (key, value) pair is inserted.
     */
    float put(byte key, float value);

    /**
     * Trove-inspired API method. An equivalent
     * of the following code:
     * 
     * if (!map.containsKey(key))
     *      map.put(key, value);
     * 
* * @param key The key of the value to check. * @param value The value to put if key does not exist. * @return true if key did not exist and value * was placed in the map. */ boolean putIfAbsent(final byte key, final float value); /** * An equivalent of calling *
     *  putOrAdd(key, additionValue, additionValue);
     * 
* * @param key The key of the value to adjust. * @param additionValue The value to put or add to the existing value if key exists. * @return Returns the current value associated with key (after changes). */ float addTo(byte key, float additionValue); /** * Trove-inspired API method. A logical * equivalent of the following code (but does not update {@link #lastSlot): *
     *  if (containsKey(key))
     *  {
     *      float v = (float) (lget() + additionValue);
     *      lset(v);
     *      return v;
     *  }
     *  else
     *  {
     *     put(key, putValue);
     *     return putValue;
     *  }
     * 
* * @param key The key of the value to adjust. * @param putValue The value to put if key does not exist. * @param additionValue The value to add to the existing value if key exists. * @return Returns the current value associated with key (after changes). */ float putOrAdd(byte key, float putValue, float additionValue); /** * @return Returns the value associated with the given key or the default value * for the value type, if the key is not associated with any value. * */ float get(byte key); /** * Puts all keys from another container to this map, replacing the values * of existing keys, if such keys are present. * * @return Returns the number of keys added to the map as a result of this * call (not previously present in the map). Values of existing keys are overwritten. */ int putAll(ByteFloatAssociativeContainer container); /** * Puts all keys from an iterable cursor to this map, replacing the values * of existing keys, if such keys are present. * * @return Returns the number of keys added to the map as a result of this * call (not previously present in the map). Values of existing keys are overwritten. */ int putAll(Iterable iterable); /** * Remove all values at the given key. The default value for the key type is returned * if the value does not exist in the map. */ float remove(byte key); }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy