JavaのStackクラス
スタックは、標準的なLIFOスタックを実装するベクターのサブクラスです。
スタックは空のスタックを作成するには、デフォルトコンストラクタを定義します。 スタックに加えベクトルで定義されたすべてのメソッドを含んで、また、それらの方法のいくつかを定義します。
Stack()
ベクトルで定義されたすべてのメソッドに加えて、彼はメソッドを定義します。
いいえ。 | メソッド説明 |
---|---|
1 | ブール空() スタックが空であるかどうかをテストします。 |
2 | オブジェクトPEEK() オブジェクトのスタックの先頭を参照してくださいが、スタックからは削除されません。 |
3 | オブジェクトポップ() スタックオブジェクトの上部を取り外し、この関数の値は、オブジェクトを返すように。 |
4 | オブジェクトプッシュ(Object要素) アイテムはスタックの先頭にプッシュします。 |
5 | int型の検索(Object要素) ベースとして1と、スタック内のオブジェクトの位置を返します。 |
例
次のプログラムは、いくつかのメソッドをサポートしていますこのコレクションを示しています
import java.util.*; public class StackDemo { static void showpush(Stack st, int a) { st.push(new Integer(a)); System.out.println("push(" + a + ")"); System.out.println("stack: " + st); } static void showpop(Stack st) { System.out.print("pop -> "); Integer a = (Integer) st.pop(); System.out.println(a); System.out.println("stack: " + st); } public static void main(String args[]) { Stack st = new Stack(); System.out.println("stack: " + st); showpush(st, 42); showpush(st, 66); showpush(st, 99); showpop(st); showpop(st); showpop(st); try { showpop(st); } catch (EmptyStackException e) { System.out.println("empty stack"); } } }
次のような結果をコンパイルした上記の例は次のとおりです。
stack: [ ] push(42) stack: [42] push(66) stack: [42, 66] push(99) stack: [42, 66, 99] pop -> 99 stack: [42, 66] pop -> 66 stack: [42] pop -> 42 stack: [ ] pop -> empty stack