Class DoubleObjectHashMap.KeysContainer

java.lang.Object
com.carrotsearch.hppc.AbstractDoubleCollection
com.carrotsearch.hppc.DoubleObjectHashMap.KeysContainer
All Implemented Interfaces:
DoubleCollection, DoubleContainer, DoubleLookupContainer, Iterable<DoubleCursor>
Enclosing class:
DoubleObjectHashMap<VType>

public final class DoubleObjectHashMap.KeysContainer extends AbstractDoubleCollection implements DoubleLookupContainer
A view of the keys inside this hash map.
  • Field Details

  • Constructor Details

    • KeysContainer

      public KeysContainer()
  • Method Details

    • contains

      public boolean contains(double e)
      Description copied from interface: DoubleContainer
      Lookup a given element in the container. This operation has no speed guarantees (may be linear with respect to the size of this container).
      Specified by:
      contains in interface DoubleContainer
      Specified by:
      contains in interface DoubleLookupContainer
      Returns:
      Returns true if this container has an element equal to e.
    • forEach

      public <T extends DoubleProcedure> T forEach(T procedure)
      Description copied from interface: DoubleContainer
      Applies a procedure to all container elements. Returns the argument (any subclass of DoubleProcedure. 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 (IntContainer):
       int count = container.forEach(new IntProcedure() {
         int count; // this is a field declaration in an anonymous class.
       
         public void apply(int value) {
           count++;
         }
       }).count;
       
      Specified by:
      forEach in interface DoubleContainer
    • forEach

      public <T extends DoublePredicate> T forEach(T predicate)
      Description copied from interface: DoubleContainer
      Applies a predicate to container elements as long, as the predicate returns true. The iteration is interrupted otherwise.
      Specified by:
      forEach in interface DoubleContainer
    • isEmpty

      public boolean isEmpty()
      Description copied from interface: DoubleContainer
      Shortcut for size() == 0.
      Specified by:
      isEmpty in interface DoubleContainer
    • iterator

      public Iterator<DoubleCursor> iterator()
      Description copied from interface: DoubleContainer
      Returns an iterator to a cursor traversing the collection. The order of traversal is not defined. More than one cursor may be active at a time. The behavior of iterators is undefined if structural changes are made to the underlying collection.

      The iterator is implemented as a cursor and it returns the same cursor instance on every call to Iterator.next() (to avoid boxing of primitive types). To read the current list's value (or index in the list) use the cursor's public fields. An example is shown below.

       for (DoubleCursor<double> c : container) {
         System.out.println("index=" + c.index + " value=" + c.value);
       }
       
      Specified by:
      iterator in interface DoubleContainer
      Specified by:
      iterator in interface Iterable<DoubleCursor>
    • size

      public int size()
      Description copied from interface: DoubleContainer
      Return the current number of elements in this container. The time for calculating the container's size may take O(n) time, although implementing classes should try to maintain the current size and return in constant time.
      Specified by:
      size in interface DoubleContainer
    • clear

      public void clear()
      Description copied from interface: DoubleCollection
      Removes all elements from this collection.
      Specified by:
      clear in interface DoubleCollection
      See Also:
    • release

      public void release()
      Description copied from interface: DoubleCollection
      Removes all elements from the collection and additionally releases any internal buffers. Typically, if the object is to be reused, a simple DoubleCollection.clear() should be a better alternative since it'll avoid reallocation.
      Specified by:
      release in interface DoubleCollection
      See Also:
    • removeAll

      public int removeAll(DoublePredicate predicate)
      Description copied from interface: DoubleCollection
      Removes all elements in this collection for which the given predicate returns true.
      Specified by:
      removeAll in interface DoubleCollection
      Returns:
      Returns the number of removed elements.
    • removeAll

      public int removeAll(double e)
      Description copied from interface: DoubleCollection
      Removes all occurrences of e from this collection.
      Specified by:
      removeAll in interface DoubleCollection
      Parameters:
      e - Element to be removed from this collection, if present.
      Returns:
      The number of removed elements as a result of this call.