栈是一种后进先出的数据结构,只有一个方向可以进行数据的存取。基于此,可以很容易的使用数组进行实现。
下面给出具体实现:
import java.util.StringJoiner;
class ArrayStack<Z> {
private final int capacity;
private final Object[] array;
private int topPos = -1;
public ArrayStack(int capacity) {
this.capacity = capacity;
array = new Object[capacity];
}
public int size() {
return topPos + 1;
}
public boolean isFull() {
return size() == capacity;
}
public boolean isEmpty() {
return size() == 0;
}
public boolean push(Z data) {<