工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Industrial programming >> Java

Java スタック クラス

Java スタック クラス

このチュートリアルでは、例を使って Java Stack クラスとそのメソッドについて学びます。

Java コレクション フレームワークには、Stack という名前のクラスがあります。 スタック データ構造の機能を提供します。

Stack クラスは Vector を拡張します クラス。


スタックの実装

スタックでは、要素は 後入れ先出し で保存およびアクセスされます 方法。つまり、要素はスタックの一番上に追加され、スタックの一番上から削除されます。


スタックの作成

スタックを作成するには、java.util.Stack をインポートする必要があります 最初にパッケージ。パッケージをインポートしたら、Java でスタックを作成する方法を次に示します。

Stack<Type> stacks = new Stack<>();

ここでは、Type スタックのタイプを示します。たとえば、

// Create Integer type stack
Stack<Integer> stacks = new Stack<>();

// Create String type stack
Stack<String> stacks = new Stack<>();

スタック メソッド

Stack以降 Vector を拡張します クラス、それはすべてのメソッド Vector を継承します .さまざまな Vector について学ぶ メソッドについては、Java ベクター クラスにアクセスしてください。

これらのメソッドに加えて、Stack クラスには、Vector と区別する 5 つのメソッドが含まれています .


push() メソッド

要素をスタックの一番上に追加するには、push() を使用します 方法。たとえば、

import java.util.Stack;

class Main {
    public static void main(String[] args) {
        Stack<String> animals= new Stack<>();

        // Add elements to Stack
        animals.push("Dog");
        animals.push("Horse");
        animals.push("Cat");

        System.out.println("Stack: " + animals);
    }
}

出力

Stack: [Dog, Horse, Cat]

pop() メソッド

スタックの一番上から要素を削除するには、 pop() を使用します 方法。たとえば、

import java.util.Stack;

class Main {
    public static void main(String[] args) {
        Stack<String> animals= new Stack<>();

        // Add elements to Stack
        animals.push("Dog");
        animals.push("Horse");
        animals.push("Cat");
        System.out.println("Initial Stack: " + animals);

        // Remove element stacks
        String element = animals.pop();
        System.out.println("Removed Element: " + element);
    }
}

出力

Initial Stack: [Dog, Horse, Cat]
Removed Element: Cat

peek() メソッド

peek() メソッドはスタックの一番上からオブジェクトを返します。たとえば、

import java.util.Stack;

class Main {
    public static void main(String[] args) {
        Stack<String> animals= new Stack<>();

        // Add elements to Stack
        animals.push("Dog");
        animals.push("Horse");
        animals.push("Cat");
        System.out.println("Stack: " + animals);

        // Access element from the top
        String element = animals.peek();
        System.out.println("Element at top: " + element);

    }
}

出力

Stack: [Dog, Horse, Cat]
Element at top: Cat

スタック内の要素を検索するには、search() を使用します 方法。スタックの一番上から要素の位置を返します。たとえば、

import java.util.Stack;

class Main {
    public static void main(String[] args) {
        Stack<String> animals= new Stack<>();

        // Add elements to Stack
        animals.push("Dog");
        animals.push("Horse");
        animals.push("Cat");
        System.out.println("Stack: " + animals);

        // Search an element
        int position = animals.search("Horse");
        System.out.println("Position of Horse: " + position);
    }
}

出力

Stack: [Dog, Horse, Cat]
Position of Horse: 2

empty() メソッド

スタックが空かどうかを確認するには、empty() を使用します 方法。たとえば、

import java.util.Stack;

class Main {
    public static void main(String[] args) {
        Stack<String> animals= new Stack<>();

        // Add elements to Stack
        animals.push("Dog");
        animals.push("Horse");
        animals.push("Cat");
        System.out.println("Stack: " + animals);

        // Check if stack is empty
        boolean result = animals.empty();
        System.out.println("Is the stack empty? " + result);
    }
}

出力

Stack: [Dog, Horse, Cat]
Is the stack empty? false

Stack の代わりに ArrayDeque を使用する

Stack クラスは、スタック データ構造の直接実装を提供します。ただし、使用しないことをお勧めします。代わりに、ArrayDeque を使用してください クラス (Deque を実装します) インターフェイス) を Java でスタック データ構造を実装します。

詳細については、こちらをご覧ください:


Java

  1. Java 最終キーワード
  2. オペレーターの Java インスタンス
  3. Java 継承
  4. Java ネストされた静的クラス
  5. Java匿名クラス
  6. Java シングルトン クラス
  7. Java リフレクション
  8. JavaArrayList クラス
  9. Java ObjectOutputStream クラス
  10. Javaジェネリック
  11. Java ファイル クラス