我試圖寫一個簡單的程序,它 使用堆棧我寫了一個類定義的方法:寫一個簡單的程序來使用堆棧
public interface Stack<E>{
public int size();
public boolean isEmpty();
public E top();
public void push(E element);
public E pop()throws EmptyStackException;
}
和其他類實現堆棧:
public abstract class myStack<E> implements Stack<E>{
private final E s[];
int t=0;
public myStack() {
this.s = (E[]) new Object[100];
}
@Override
public int size(){
return t;
}
@Override
public boolean isEmpty(){
switch(size()){
case 0:
return true;
}
return false;
}
@Override
public E top() {
if(isEmpty())
throw new EmptyStackException();
return s[t-1];
}
@Override
public void push(E element) {
if(isEmpty())
s[0]= element;
else
s[t]= element;
t++;
}
@Override
public E pop() {
E x;
if(isEmpty())
throw new EmptyStackException();
else{
x = s[t-1];
s[t-1] = null;
t--;
}
return x;
}
}
測試這些代碼,我寫了一個包含主要的另一個類():
public static void main(String[] args) {
// TODO code application logic here
Stack<Integer> s;
s.push(1);
s.push(2);
System.out.println(s.pop());
}
但是當我運行它,它給了我這個錯誤「在線程異常‘主’了java.lang.RuntimeException」
我已經檢查這個程序幾次,但我真的不明白是什麼問題
任何人都可以請幫助我? 感謝您的關注提前
你的程序不能編譯,更不用說運行了。 –
@MarkoTopolnik這是最大的謎語之一:爲什麼newbees認爲他們可以騙我們? – Ingo
@Ingo讓我們不要這麼苛刻,給予一個懷疑的好處:) –