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!
推薦閱讀:
- Java集合框架之Stack Queue Deque使用詳解刨析
- java數據結構基礎:棧
- Java實現單鏈表SingleLinkedList增刪改查及反轉 逆序等
- Java 利用棧來反轉鏈表和排序的操作
- Java二叉樹的四種遍歷(遞歸與非遞歸)