使用泛型实现栈结构

Jasonakeke
全栈领域新星创作者
2022-05-24 21:40:05

目录

  • 题目描述
  • 解题思路
  • 代码详解
  • 运行截图

题目描述

题目:泛型是JAVA重要的特性,使用泛型编程,可以使代码复用率提高。

实现:使用泛型实现栈结构

解题思路

创建一个泛型类:Stack。

定义3个方法,入栈的push方法,出栈的pop方法,还有判断栈是否为空的empty()方法。

在底层实现上,使用LinkedList作为容器。

泛型类是含有一个或多个类型参数的类。定义泛型类很简单,只需要在类的名称后面加上“<”和“>”,并在其中指明类型参数。

代码详解

package question;

import java.util.LinkedList;

/**
 * @ClassName Question74
 * @Description
 * @Author keke
 * @Time 2022/5/24 21:30
 * @Version 1.0
 */
public class Question74 {
    public static void main(String[] args) {
        Stack<String> stack = new Stack<>();
        System.out.println("向栈中增加字符串:");
        System.out.println("y");
        System.out.println("y");
        System.out.println("d");
        System.out.println("s");
        stack.push("y");
        stack.push("y");
        stack.push("d");
        stack.push("s");
        System.out.println("向栈中取出字符串:");
        while (!stack.empty()){
            System.out.println(stack.pop());
        }
    }
}

class Stack<T>{

    private LinkedList<T> container = new LinkedList<>();

    public void push(T t){
        container.addFirst(t);
    }

    public T pop(){
        return container.removeFirst();
    }


    public boolean empty(){
        return container.isEmpty();
    }
}

运行截图

image-20220524213801329

...全文
60 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

123,089

社区成员

发帖
与我相关
我的任务
社区描述
越努力越幸运,一个人努力可以走得很快,一群人努力,可以走得很远,准备好一起成为架构师了嘛!
社区管理员
  • 小虚竹
  • 阿莫 夕林
  • java李杨勇
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

【十日集训】十日训练营活动正式开始!和小虚竹一起,打卡学习,从入门到大佬,准备好一起成为JAVA架构师了嘛!!

【添加微信】备注1024,加入小虚竹JAVA微信交流群,一起学习交流进大厂

试试用AI创作助手写篇文章吧