/* 配列によるスタックの実現例. 簡単のためオーバーフローなどの例外処理は省いてある.*/ class Stack { int[] stack; // スタックを実現する配列 int top; // スタックトップを示すインデックス Stack (int size) { // スタックのコンストラクタ stack = new int[size]; // 配列を生成 top = 0; // 次にデータが入る場所を示す } void push (int data) { // プッシュ操作 stack[top++] = data; // オーバーフローのチェックをすべき } int pop () { // ポップ操作 return stack[--top]; // アンダーフローのチェックをすべき } public static void main (String[] args) { Stack s = new Stack(100); // 大きさ100のスタックを作成 s.push(10); // 10をプッシュ s.push(20); // 20をプッシュ System.out.println(s.pop()+", "+s.pop()); // 20, 10 } }