Package com.carrotsearch.hppc
Class DoubleStack
java.lang.Object
com.carrotsearch.hppc.AbstractDoubleCollection
com.carrotsearch.hppc.DoubleArrayList
com.carrotsearch.hppc.DoubleStack
- All Implemented Interfaces:
DoubleCollection
,DoubleContainer
,DoubleIndexedContainer
,Preallocable
,Cloneable
,Iterable<DoubleCursor>
,RandomAccess
@Generated(date="2023-10-26T04:33:09+0000",
value="KTypeStack.java")
public class DoubleStack
extends DoubleArrayList
A subclass of
DoubleArrayList
adding stack-related utility methods.
The top of the stack is at the DoubleArrayList.size()
- 1
element.-
Nested Class Summary
Nested classes/interfaces inherited from class com.carrotsearch.hppc.DoubleArrayList
DoubleArrayList.ValueIterator
-
Field Summary
Fields inherited from class com.carrotsearch.hppc.DoubleArrayList
buffer, elementsCount, EMPTY_ARRAY, resizer
-
Constructor Summary
ConstructorsConstructorDescriptionNew instance with sane defaults.DoubleStack
(int expectedElements) New instance with sane defaults.DoubleStack
(int expectedElements, ArraySizingStrategy resizer) New instance with sane defaults.DoubleStack
(DoubleContainer container) Create a stack by pushing all elements of another container to it. -
Method Summary
Modifier and TypeMethodDescriptionclone()
Clone this object.void
discard()
Discard the top element from the stack.void
discard
(int count) Discard an arbitrary number of elements from the top of the stack.static DoubleStack
from
(double... elements) Create a stack by pushing a variable number of arguments to it.double
peek()
Peek at the top element on the stack.double
pop()
Remove the top element from the stack and return it.void
push
(double e1) Adds one double to the stack.final void
push
(double... elements) Vararg-signature method for pushing elements at the top of the stack.void
push
(double[] elements, int start, int len) Add a range of array elements to the stack.void
push
(double e1, double e2) Adds two doubles to the stack.void
push
(double e1, double e2, double e3) Adds three doubles to the stack.void
push
(double e1, double e2, double e3, double e4) Adds four doubles to the stack.int
pushAll
(DoubleContainer container) Pushes all elements from another container to the top of the stack.int
pushAll
(Iterable<? extends DoubleCursor> iterable) Pushes all elements from another iterable to the top of the stack.Methods inherited from class com.carrotsearch.hppc.DoubleArrayList
add, add, add, add, addAll, addAll, clear, contains, ensureBufferSpace, ensureCapacity, equalElements, equals, forEach, forEach, get, hashCode, indexOf, insert, isEmpty, iterator, lastIndexOf, release, remove, removeAll, removeAll, removeFirst, removeLast, removeRange, resize, set, size, toArray, trimToSize
Methods inherited from class com.carrotsearch.hppc.AbstractDoubleCollection
removeAll, retainAll, retainAll, toString
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.carrotsearch.hppc.DoubleCollection
removeAll, retainAll, retainAll
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
Constructor Details
-
DoubleStack
public DoubleStack()New instance with sane defaults. -
DoubleStack
public DoubleStack(int expectedElements) New instance with sane defaults.- Parameters:
expectedElements
- The expected number of elements guaranteed not to cause buffer expansion (inclusive).
-
DoubleStack
New instance with sane defaults.- Parameters:
expectedElements
- The expected number of elements guaranteed not to cause buffer expansion (inclusive).resizer
- Underlying buffer sizing strategy.
-
DoubleStack
Create a stack by pushing all elements of another container to it.
-
-
Method Details
-
push
public void push(double e1) Adds one double to the stack. -
push
public void push(double e1, double e2) Adds two doubles to the stack. -
push
public void push(double e1, double e2, double e3) Adds three doubles to the stack. -
push
public void push(double e1, double e2, double e3, double e4) Adds four doubles to the stack. -
push
public void push(double[] elements, int start, int len) Add a range of array elements to the stack. -
push
public final void push(double... elements) Vararg-signature method for pushing elements at the top of the stack.This method is handy, but costly if used in tight loops (anonymous array passing)
-
pushAll
Pushes all elements from another container to the top of the stack. -
pushAll
Pushes all elements from another iterable to the top of the stack. -
discard
public void discard(int count) Discard an arbitrary number of elements from the top of the stack. -
discard
public void discard()Discard the top element from the stack. -
pop
public double pop()Remove the top element from the stack and return it. -
peek
public double peek()Peek at the top element on the stack. -
from
Create a stack by pushing a variable number of arguments to it. -
clone
Clone this object. The returned clone will reuse the same hash function and array resizing strategy.- Overrides:
clone
in classDoubleArrayList
-