Java栈结构
小虚竹and掘金 人气:0使用泛型实现栈结构
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、泛型类型的参数只能使用类类型,而不能使用基本数据类型。
加载全部内容