Java使用泛型實現棧結構的示例代碼

使用泛型實現棧結構

1.題目

泛型是JAVA重要的特性,使用泛型編程,可以使代碼復用率提高。

實現:使用泛型實現棧結構

2.解題思路

創建一個泛型類:Stack。

定義3個方法,入棧的push方法,出棧的pop方法,還有判斷棧是否為空的empty()方法。

在底層實現上,使用LinkedList作為容器。

泛型類是含有一個或多個類型參數的類。定義泛型類很簡單,隻需要在類的名稱後面加上“<”和“>”,並在其中指明類型參數。

3.代碼詳解

Stack

package com.xiaoxuzhu;
import java.util.LinkedList;
/**
 * Description: 
 *
 * @author xiaoxuzhu
 * @version 1.0
 *
 * <pre>
 * 修改記錄:
 * 修改後版本	        修改人		修改日期			修改內容
 * 2022/5/10.1	    xiaoxuzhu		2022/5/10		    Create
 * </pre>
 * @date 2022/5/10
 */

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

package com.xiaoxuzhu;

/**
 * Description: 
 *
 * @author xiaoxuzhu
 * @version 1.0
 *
 * <pre>
 * 修改記錄:
 * 修改後版本	        修改人		修改日期			修改內容
 * 2022/5/10.1	    xiaoxuzhu		2022/5/10		    Create
 * </pre>
 * @date 2022/5/10
 */
public class StackTest {
    public static void main(String[] args) {
        Stack<String> stack = new Stack<String>();
        System.out.println("向棧中增加字符串:");
        System.out.println("虛竹哥真帥");
        System.out.println("虛竹哥yyds");
        System.out.println("虛竹哥好厲害");
        stack.push("虛竹哥真帥");  //向棧中增加字符串
        stack.push("虛竹哥yyds");   //向棧中增加字符串
        stack.push("虛竹哥好厲害"); //向棧中增加字符串
        System.out.println("從棧中取出字符串:");
        while (!stack.empty()) {
            System.out.println((String) stack.pop());//刪除棧中全部元素並進行輸出
        }
    }
}

多學一個知識點

1、泛型參數的命名一般使用單個的大寫字母,如果對於任意類型可以使用字母T等。

2、泛型類型的參數隻能使用類類型,而不能使用基本數據類型。

到此這篇關於Java使用泛型實現棧結構的示例代碼的文章就介紹到這瞭,更多相關Java棧結構內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: