Package com.carrotsearch.hppc
Interface ObjectContainer<KType>
- All Superinterfaces:
Iterable<ObjectCursor<KType>>
- All Known Subinterfaces:
ObjectCollection<KType>
,ObjectDeque<KType>
,ObjectIndexedContainer<KType>
,ObjectLookupContainer<KType>
,ObjectSet<KType>
- All Known Implementing Classes:
AbstractObjectCollection
,ByteObjectHashMap.ValuesContainer
,CharObjectHashMap.ValuesContainer
,DoubleObjectHashMap.ValuesContainer
,FloatObjectHashMap.ValuesContainer
,IntObjectHashMap.ValuesContainer
,LongObjectHashMap.ValuesContainer
,ObjectArrayDeque
,ObjectArrayList
,ObjectByteHashMap.KeysContainer
,ObjectCharHashMap.KeysContainer
,ObjectDoubleHashMap.KeysContainer
,ObjectFloatHashMap.KeysContainer
,ObjectHashSet
,ObjectIdentityHashSet
,ObjectIntHashMap.KeysContainer
,ObjectLongHashMap.KeysContainer
,ObjectObjectHashMap.KeysContainer
,ObjectObjectHashMap.ValuesContainer
,ObjectScatterSet
,ObjectShortHashMap.KeysContainer
,ObjectStack
,ShortObjectHashMap.ValuesContainer
@Generated(date="2023-10-26T04:33:09+0000",
value="KTypeContainer.java")
public interface ObjectContainer<KType>
extends Iterable<ObjectCursor<KType>>
A generic container holding
Object
s.-
Method Summary
Modifier and TypeMethodDescriptionboolean
Lookup a given element in the container.<T extends ObjectProcedure<? super KType>>
TforEach
(T procedure) Applies aprocedure
to all container elements.boolean
isEmpty()
Shortcut forsize() == 0
.iterator()
Returns an iterator to a cursor traversing the collection.int
size()
Return the current number of elements in this container.Object[]
toArray()
Copies all elements of this container to an array.<T> T[]
Copies all elements of this container to a dynamically created array of the given component type.Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
Method Details
-
iterator
Iterator<ObjectCursor<KType>> iterator()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 (ObjectCursor<Object> c : container) { System.out.println("index=" + c.index + " value=" + c.value); }
-
contains
Lookup a given element in the container. This operation has no speed guarantees (may be linear with respect to the size of this container).- Returns:
- Returns
true
if this container has an element equal toe
.
-
size
int size()Return the current number of elements in this container. The time for calculating the container's size may takeO(n)
time, although implementing classes should try to maintain the current size and return in constant time. -
isEmpty
boolean isEmpty()Shortcut forsize() == 0
. -
toArray
Object[] toArray()Copies all elements of this container to an array. The returned array is always a copy, regardless of the storage used by the container. -
toArray
Copies all elements of this container to a dynamically created array of the given component type.- Throws:
ArrayStoreException
- Thrown if this container's elements are not assignable to the array's component type.
-
forEach
Applies aprocedure
to all container elements. Returns the argument (any subclass ofObjectProcedure
. 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;
-
forEach
Applies apredicate
to container elements as long, as the predicate returnstrue
. The iteration is interrupted otherwise.
-