思路分析:既然是用泛型實現棧結構,那就不能用JDK自帶的stack包了,需要自己定義一個棧結構,比如LinkedList。
代碼如下:
Stack.java:
代碼如下:
package cn.edu.xidian.crytoll;
import java.util.LinkedList;
public class Stack<T> {
private LinkedList<T> container = new LinkedList<T>();
public void push(T t) {
container.addFirst(t);
}
public T pop() {
return container.removeFirst();
}
public boolean empty() {
return container.isEmpty();
}
}
StackTest.java:
代碼如下:
package cn.edu.xidian.crytoll;
public class StackTest {
public static void main(String[] args) {
Stack<String> stack = new Stack<String>();
System.out.println("向棧中增加字符串:");
System.out.println("視頻學Java");
System.out.println("細說Java");
System.out.println("Java從入門到精通(第2版)");
stack.push("視頻學Java"); //向棧中增加字符串
stack.push("細說Java"); //向棧中增加字符串
stack.push("Java從入門到精通(第2版)"); //向棧中增加字符串
System.out.println("從棧中取出字符串:");
while (!stack.empty()) {
System.out.println((String) stack.pop());//刪除棧中全部元素並進行輸出
}
}
}