首頁  >  文章  >  Java  >  java使用泛型實作堆疊結構範例分享

java使用泛型實作堆疊結構範例分享

高洛峰
高洛峰原創
2017-01-18 11:14:011387瀏覽

思路分析:既然是用泛型實作堆疊結構,那就不能用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());//删除栈中全部元素并进行输出
        }
    }
}

更多java使用泛型實作堆疊結構範例分享相關文章請關注PHP中文網!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn