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

com.carrotsearch.hppc.ByteDoubleAssociativeContainer Maven / Gradle / Ivy

package com.carrotsearch.hppc;

import java.util.Iterator;

import com.carrotsearch.hppc.cursors.*;
import com.carrotsearch.hppc.predicates.*;
import com.carrotsearch.hppc.procedures.*;

/**
 * An associative container (alias: map, dictionary) from keys to (one or possibly more) values. 
 * Object keys must fulfill the contract of {@link Object#hashCode()} and {@link Object#equals(Object)}.
 * 
 * 

Note that certain associative containers (like multimaps) may return the same key-value pair * multiple times from iterators.

* * @see ByteContainer */ @javax.annotation.Generated(date = "2013-07-09T09:54:21+0200", value = "HPPC generated from: ByteDoubleAssociativeContainer.java") public interface ByteDoubleAssociativeContainer extends Iterable { /** * Returns a cursor over the entries (key-value pairs) in this map. The iterator is * implemented as a cursor and it returns the same cursor instance on every * call to {@link Iterator#next()}. To read the current key and value use the cursor's * public fields. An example is shown below. *
    * for (IntShortCursor c : intShortMap)
    * {
    *     System.out.println("index=" + c.index 
    *       + " key=" + c.key
    *       + " value=" + c.value);
    * }
    * 
* *

The index field inside the cursor gives the internal index inside * the container's implementation. The interpretation of this index depends on * to the container. */ @Override public Iterator iterator(); /** * Returns true if this container has an association to a value for * the given key. */ public boolean containsKey(byte key); /** * @return Returns the current size (number of assigned keys) in the container. */ public int size(); /** * @return Return true if this hash map contains no assigned keys. */ public boolean isEmpty(); /** * Removes all keys (and associated values) present in a given container. An alias to: *

     * keys().removeAll(container)
     * 
* but with no additional overhead. * * @return Returns the number of elements actually removed as a result of this call. */ public int removeAll(ByteContainer container); /** * Removes all keys (and associated values) for which the predicate returns true. * An alias to: *
     * keys().removeAll(container)
     * 
* but with no additional overhead. * * @return Returns the number of elements actually removed as a result of this call. */ public int removeAll(BytePredicate predicate); /** * Applies a given procedure to all keys-value pairs in this container. Returns the argument (any * subclass of {@link ByteDoubleProcedure}. This lets the caller to call methods of the argument * by chaining the call (even if the argument is an anonymous type) to retrieve computed values, * for example. */ public T forEach(T procedure); /** * Clear all keys and values in the container. */ public void clear(); /** * Returns a collection of keys of this container. The returned collection is a view * over the key set and any modifications (if allowed) introduced to the collection will * propagate to the associative container immediately. */ public ByteCollection keys(); /** * Returns a container view of all values present in this container. The returned collection is a view * over the key set and any modifications (if allowed) introduced to the collection will * propagate to the associative container immediately. */ public DoubleContainer values(); }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy