クラスStack<E>

型パラメータ:
E - 構成要素の型
すべての実装されたインタフェース:
Serializable, Cloneable, Iterable<E>, Collection<E>, List<E>, RandomAccess, SequencedCollection<E>

public class Stack<E> extends Vector<E>
Stackクラスは、オブジェクトの後入れ先出し(LIFO)スタックを表します。 これは、ベクトルをスタックとして処理できる5つの操作で、クラスVectorを拡張します。 通常のpushおよびpop操作、およびスタックの最上位アイテムでpeekへのメソッド、スタックがemptyかどうかをテストするメソッド、およびアイテムのスタックをsearchして最上位からどのくらい遠いかを検出するメソッドが提供されます。

スタックが初めて作成されたとき、項目はありません。

より完全で一貫性のある一連のLIFOスタック・オペレーションが、Dequeインタフェースとその実装によって提供されています。このクラスよりもそれらを優先的に使用するようにしてください。 たとえば、

  Deque<Integer> stack = new ArrayDeque<Integer>();

導入されたバージョン:
1.0
関連項目:
  • フィールドのサマリー

    クラスベクトルで宣言されたフィールド

    capacityIncrement, elementCount, elementData
    修飾子と型
    フィールド
    説明
    protected int
    VectorのサイズがVectorの容量を超えるときに自動的に増やされる量です。
    protected int
    このVectorオブジェクト内の有効なコンポーネントの数です。
    protected Object[]
    Vectorの要素が格納される配列バッファです。

    クラスで宣言されたフィールド AbstractList

    modCount
    修飾子と型
    フィールド
    説明
    protected int
    このリストの構造が変更された回数です。
  • コンストラクタのサマリー

    コンストラクタ
    コンストラクタ
    説明
    空のStackを作成します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    boolean
    スタックが空かどうかを判定します。
    スタックの先頭にあるオブジェクトを取り出します。このときオブジェクトはスタックから削除されません。
    pop()
    スタックの先頭のオブジェクトを削除し、そのオブジェクトを関数の値として返します
    push(E item)
    スタックの先頭にオブジェクトを入れます。
    int
    このスタックにあるオブジェクトの位置を1から始まるインデックスで返します。

    クラス Vectorで宣言されたメソッド

    add, add, addAll, addAll, addElement, capacity, clear, clone, contains, containsAll, copyInto, elementAt, elements, ensureCapacity, equals, firstElement, forEach, get, hashCode, indexOf, indexOf, insertElementAt, isEmpty, iterator, lastElement, lastIndexOf, lastIndexOf, listIterator, listIterator, remove, remove, removeAll, removeAllElements, removeElement, removeElementAt, removeIf, removeRange, replaceAll, retainAll, set, setElementAt, setSize, size, spliterator, subList, toArray, toArray, toString, trimToSize
    修飾子と型
    メソッド
    説明
    void
    add(int index, E element)
    Vector内の指定された位置に指定された要素を挿入します。
    boolean
    add(E e)
    Vectorの末尾に指定の要素を追加します。
    boolean
    addAll(int index, Collection<? extends E> c)
    指定されたCollection内のすべての要素を、Vectorの指定された位置に挿入します。
    boolean
    addAll(Collection<? extends E> c)
    指定されたCollection内のすべての要素をこのVectorの末尾に、そのCollectionのIteratorによって返される順序で追加します。
    void
    指定された要素をVectorの最後に追加し、サイズを1増やします。
    int
    Vectorの現在の容量を返します。
    void
    すべての要素をVectorから削除します。
    Vectorをコピーします。
    boolean
    指定された要素がこのベクトルに含まれている場合にtrueを返します。
    boolean
    Vectorが指定のCollection内のすべての要素を保持する場合にtrueを返します。
    void
    copyInto(Object[] anArray)
    Vectorの要素を、指定された配列にコピーします。
    elementAt(int index)
    指定されたインデックスの要素を返します。
    このVectorの要素を列挙したリストを返します。
    void
    ensureCapacity(int minCapacity)
    Vectorの収容量を必要に応じて増やして、少なくとも最小収容量の引数で指定される要素数を保持できることを保証します。
    boolean
    指定されたObjectがVectorと等しいかどうかを比較します。
    このベクトルの最初のコンポーネント(インデックス0にある項目)を返します。
    void
    forEach(Consumer<? super E> action)
    Iterableの各要素に対して指定されたアクションを、すべての要素が処理されるか、アクションが例外をスローするまで実行します。
    get(int index)
    Vector内の指定された位置にある要素を返します。
    int
    Vectorのハッシュ・コード値を返します。
    int
    指定された要素がベクトル内で最初に検出された位置のインデックスを返します。指定された要素がベクトルにない場合は -1を返します。
    int
    indexOf(Object o, int index)
    指定された要素をこのベクトル内でindexから順方向に検索して、最初に検出された位置のインデックスを返します。要素が見つからない場合は -1を返します。
    void
    insertElementAt(E obj, int index)
    指定されたオブジェクトを、このベクトル内の指定されたindexの位置にコンポーネントとして挿入します。
    boolean
    Vectorが要素を持たないかどうかを判定します。
    このリスト内の要素を適切な順序で反復するイテレータを返します。
    Vectorの最後の要素を返します。
    int
    指定された要素がベクトル内で最後に検出された位置のインデックスを返します。指定された要素がベクトルにない場合は -1を返します。
    int
    lastIndexOf(Object o, int index)
    指定された要素をこのベクトル内でindexから逆方向に検索して、最後に検出された位置のインデックスを返します。要素が見つからない場合は -1を返します。
    このリスト内の要素を(適切な順序で)反復するリスト・イテレータを返します。
    listIterator(int index)
    リスト内の指定された位置で始まる、リスト内の要素を(適切な順序で)反復するリスト・イテレータを返します。
    remove(int index)
    ベクトルの指定された位置にある要素を削除します。
    boolean
    Vector内で最初に検出された指定された要素を削除します。
    boolean
    Vectorから、指定されたCollection内に保持されているすべての要素を削除します。
    void
    Vectorからすべての要素を削除し、サイズを0に設定します。
    boolean
    最初に検出された(最小インデックスの)引数の要素をVectorから削除します。
    void
    removeElementAt(int index)
    指定されたインデックスのコンポーネントを削除します。
    boolean
    removeIf(Predicate<? super E> filter)
    指定された述語(オプションの操作)を満たす、このコレクションのすべての要素を削除します。
    protected void
    removeRange(int fromIndex, int toIndex)
    fromIndex (これを含む)からtoIndex (これを含まない)の範囲のインデックスを持つすべての要素をこのリストから削除します。
    void
    このリストの各要素を、その要素(オプションの操作)に演算子を適用した結果に置き換えます。
    boolean
    指定されたCollection内に保持されている、Vector内の要素だけを保持します。
    set(int index, E element)
    Vector内の指定された位置にある要素を、指定の要素で置き換えます。
    void
    setElementAt(E obj, int index)
    このベクトルの指定されたindexにあるコンポーネントが指定されたオブジェクトになるように設定します。
    void
    setSize(int newSize)
    Vectorのサイズを設定します。
    int
    Vectorの要素数を返します。
    このリスト内の要素に対する遅延バインディングおよびフェイルファスト Spliteratorを作成します。
    subList(int fromIndex, int toIndex)
    このListの、fromIndex (これを含む)とtoIndex (これを含まない)の間の部分のビューを返します。
    Vector内のすべての要素を正しい順序で保持する配列を返します。
    <T> T[]
    toArray(T[] a)
    Vector内のすべての要素が正しい順序で格納されている配列を返します。返される配列の実行時の型は指定された配列の型になります。
    各要素のString表現を保持している、Vectorの文字列表現を返します。
    void
    Vectorの容量を、現在の容量にまで減らします。

    クラスオブジェクトで宣言されたメソッド

    finalize, getClass, notify, notifyAll, wait, wait, wait
    修飾子と型
    メソッド
    説明
    protected void
    削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。
    最終決定は非推奨であり、将来のリリースで削除される可能性があります。
    final Class<?>
    このObjectの実行時クラスを返します。
    final void
    このオブジェクトのモニターで待機中のスレッドを1つ再開します。
    final void
    このオブジェクトのモニターで待機中のすべてのスレッドを再開します。
    final void
    現在のスレッドが目覚めるまで待機します。通常、notifiedまたはinterruptedです。
    final void
    wait(long timeoutMillis)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
    final void
    wait(long timeoutMillis, int nanos)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。

    インタフェースCollectionで宣言されたメソッド

    parallelStream, stream, toArray
    修飾子と型
    メソッド
    説明
    default Stream<E>
    このコレクションをソースとして、潜在的に並列のStreamを返します。
    default Stream<E>
    このコレクションをソースとして使用して、逐次的なStreamを返します。
    default <T> T[]
    toArray(IntFunction<T[]> generator)
    指定されたgenerator関数を使用してこのコレクションのすべての要素を含む配列を返し、返された配列を割り当てます。

    インタフェースListで宣言されたメソッド

    addFirst, addLast, getFirst, getLast, removeFirst, removeLast, reversed, sort
    修飾子と型
    メソッド
    説明
    default void
    このコレクションの最初の要素として要素を追加します (オプションの操作)。
    default void
    このコレクションの最後の要素として要素を追加します (オプションの操作)。
    default E
    このコレクションの最初の要素を取得します。
    default E
    このコレクションの最後の要素を取得します。
    default E
    このコレクションの最初の要素を削除して返します(オプションの操作)。
    default E
    このコレクションの最後の要素を削除して返します(オプションの操作)。
    default List<E>
    このコレクションの逆順viewを返します。
    default void
    sort(Comparator<? super E> c)
    このリストは、指定されたComparator (オプションの操作)によって誘導された順序に従ってソートされます。
  • コンストラクタの詳細

    • Stack

      public Stack()
      空のStackを作成します。
  • メソッドの詳細

    • push

      public E push(E item)
      スタックの先頭にオブジェクトを入れます。 これは、次の内容とまったく同じ効果を持ちます。
      addElement(item)
      パラメータ:
      item - スタックに入れるオブジェクト。
      戻り値:
      item引数。
      関連項目:
    • pop

      public E pop()
      スタックの先頭のオブジェクトを削除し、そのオブジェクトを関数の値として返します
      戻り値:
      このスタックの上部にあるオブジェクト(Vectorオブジェクトの最後のアイテム)。
      スロー:
      EmptyStackException - このスタックが空の場合
    • peek

      public E peek()
      スタックの先頭にあるオブジェクトを取り出します。このときオブジェクトはスタックから削除されません。
      戻り値:
      このスタックの上部にあるオブジェクト(Vectorオブジェクトの最後のアイテム)。
      スロー:
      EmptyStackException - このスタックが空の場合
    • empty

      public boolean empty()
      スタックが空かどうかを判定します。
      戻り値:
      スタックに項目が入っていない場合だけtrue、それ以外の場合はfalse
    • search

      public int search(Object o)
      このスタックにあるオブジェクトの位置を1から始まるインデックスで返します。 オブジェクトoがこのスタック内のアイテムとして出現する場合、このメソッドは、スタックの最上部に最も近い出現スタックの最上部のスタックからの距離を返します。スタックの最上部のアイテムは、距離1であるとみなされます。 equalsメソッドは、oをこのスタックのアイテムと比較するために使用します。
      パラメータ:
      o - 目的のオブジェクト。
      戻り値:
      オブジェクト位置を表す、1から始まるスタックの先頭からのインデックス。戻り値-1は、オブジェクトがスタック上にないことを示す。