Java使用嵌套类的简单堆栈
示例
public class IntStack {
private IntStackNode head;
//IntStackNode是IntStack类的内部类
//此内部类的每个实例都充当
//有助于表示的整体堆栈
private static class IntStackNode {
private int val;
private IntStackNode next;
private IntStackNode(int v, IntStackNode n) {
val = v;
next = n;
}
}
public IntStack push(int v) {
head = new IntStackNode(v, head);
return this;
}
public int pop() {
int x = head.val;
head = head.next;
return x;
}
}及其使用(值得注意的是)根本不承认嵌套类的存在。
public class Main {
public static void main(String[] args) {
IntStack s = new IntStack();
s.push(4).push(3).push(2).push(1).push(0);
//打印:0、1、2、3、4
for(int i = 0; i < 5; i++) {
System.out.print(s.pop() + ", ");
}
}
}