Java_基础—用LinkedList模拟栈数据结构的集合并测试
为了达到更好的封装效果,应该把使用LinkedLIst的方法进行进栈(list.addLast(obj))、弹栈(list.removeLast())、判断栈是否为空(list.isEmpty())封装到一个类中,然后通过类名进行调用所需要的方法。
创建一个Stack类
package com.soar.list;import java.util.LinkedList;@SuppressWarnings("rawtypes")
public class Stack { private LinkedList list = new LinkedList();/** 模拟进栈方法*/public void in(Object obj){list.addLast(obj);}/** 模拟出栈方法*/public Object out(){return list.removeLast();}/** 模拟栈结构是否为空*/public boolean isEmpty(){return list.isEmpty();}}
创建一个LinkedLIst类
package com.soar.list;import java.util.LinkedList;@SuppressWarnings({ "rawtypes", "unchecked" })
public class Demo4_LinkedList {
/** 用LinkedList模拟栈结构*/public static void main(String[] args) {//demo_Stack();Stack s = new Stack(); s.in("a"); //进栈 a,b,c,ds.in("b");s.in("c");s.in("d");while(!s.isEmpty()){ //判断栈是否为空System.out.println(s.out()); //弹栈 d,c,b,a}}private static void demo_Stack() {LinkedList list = new LinkedList(); //创建集合对象list.add("a");list.add("b");list.add("c");list.add("d");/* System.out.println(list.removeLast()); //dSystem.out.println(list.removeLast()); //cSystem.out.println(list.removeLast()); //bSystem.out.println(list.removeLast()); //a
*/ while(!list.isEmpty()){System.out.println(list.removeLast());}}}
转载于:https://www.cnblogs.com/soarsir/p/7652286.html
Java_基础—用LinkedList模拟栈数据结构的集合并测试相关推荐
- 集合框架(用LinkedList实现栈结构的集合代码)
package cn.itcast_05; import java.util.Iterator; import java.util.LinkedList; /* *请用LinkedList模拟栈数据结 ...
- 【java进阶06:数组】使用一维数组模拟栈数据结构 使用二维数组模拟酒店,酒店管理系统 Arrays工具类 冒泡排序算法、选择排序算法、二分法
目录 数组 二维数组 总结 作业 Arrays工具类 数组 数组总结 及 静态初始化一维数组 /* Array:1.java语言中的数组是一种引用数据类型,不属于基本数据类型,数组的父类是Object ...
- 模拟栈数据结构改进版(使用异常)
代码 /*第一题:编写程序,使用一维数组,模拟栈数据结构.要求:1.这个栈可以存储java中的任何引用类型的数据.2.在栈中提供push方法模拟压栈.(栈满了,要有提示信息.)3.在栈中提供pop方法 ...
- 编写程序,使用一维数组,模拟栈数据结构。 要求: 1、这个栈可以存储java中的任何引用类型的数据。 2、在栈中提供push方法模拟压栈。(栈满了,要有
代码 /*第一题:编写程序,使用一维数组,模拟栈数据结构.要求:1.这个栈可以存储java中的任何引用类型的数据.2.在栈中提供push方法模拟压栈.(栈满了,要有提示信息.)3.在栈中提供pop方法 ...
- 用LinkedList模拟栈(Java容器)
栈(stack)在计算机科学中是限定仅在表尾进行插入或删除操作的线形表.栈是一种数据结构,它按照后进先出的原则存储数据,先进入的数据被压入栈底,最后的数据在栈顶.需要读数据的时候从栈顶开始弹出数据(最 ...
- LinkedList 模拟栈和队列
LinkedList 比ArrayList 提供了更多的方法,其中有两个方法可以实现栈和队列的操作. removeFirst() 移除并返回此列表中的第一个元素. removeLast() 移除并返回 ...
- python基础语法-三大内建数据结构之集合(set)
定义 set(集合):一组无重复无序的数据.就像数学中集合的概念.它没有标准的括号包裹,[]表示list,()表示tuple,{}表示dict. 但是我们可以用带值的大括号来定义. 还有一种集合叫冰冻 ...
- 用LinkedList方法模拟栈的数据结构
import java.util.LinkedList; /** * * @author Ginfer * @virsion * HP * linkedlist * HP * 自定义栈集合 * 栈的数 ...
- Java LinkedList特有方法程序小解 使用LinkedList 模拟一个堆栈或者队列数据结构。...
package Collection;import java.util.LinkedList;/* LinkedList:特有的方法 addFirst()/addLast(); getFirst()/ ...
最新文章
- 重构第15天 移除重复的代码(Remove Duplication)
- Timer与ScheduledExecutorService间的选择
- 【NOI2012】骑行川藏【拉格朗日乘数法】【二分套二分】
- sql注入语句示例大全_SQL Group By语句用示例语法解释
- redis高级-------2
- android studio中的适配器,如何在Android Studio中测试回收器视图适配器
- AVR Studio 5 使用初体验及完整版下载地址
- android华为指纹开发_2020指纹芯片行业市场调研分析报告
- Ubuntu下Linux系统文件恢复
- RH413-测试文件的特殊权限
- 三维计算机软件图,三维cad看图
- LQR控制算法推导以及简单分析
- 每次离开总是 装做轻松的样子 微笑着说回去吧 转身泪湿眼底
- IE8 访问https安全证书错误;导航阻止 解决办法 《转》
- 360与腾讯之争——娱乐化时代的产物
- ubuntu系统学习(1) 测网速命令/实时显示网速speedometer
- 设计模式四:用一个生产手机的简单例子说清楚工厂模式
- python中append什么意_python里append是什么
- MODBUS CRC16 工具类
- JPBC密码学库封装函数