java 16 - 5 LinkedList模拟栈数据结构的集合
请用LinkedList模拟栈数据结构的集合,并测试
题目的意思是:
你自己的定义一个集合类,在这个集合类内部可以使用LinkedList模拟。
package cn_LinkedList;
import java.util.LinkedList;
public class MyStack {
//定义一个LinkedList类的成员变量
private LinkedList list = null;
/**
* 构造方法
* @list 调用LinkedList类的方法
*/
public MyStack(){
list = new LinkedList();
}
/**
* 既然是集合,就要有添加元素的方法
* @param obj 可添加任何类型的元素
*/
public void add(Object obj){
list.addFirst(obj);
}
/**
* 集合还要有提取元素的方法,但是这里要求模拟栈的方式,
* 而栈是先进入的后出来,所以,要用removeFirst()方法
* 存入 A/B/C , 提取C/B/A,提取出来就丢了,则下一个就成了第一个,依此类推
*/
public void get(Object obj){
list.removeFirst();
}
/**
* 提取时,为了防止超出集合的容量出现错误,要加一个查询下一个元素是否存在的方法
* @isEmpty 是boolean类型
*/
public boolean isEmpty(){
return list.isEmpty();
}
}
package cn_LinkedList;
import java.util.Iterator;
import java.util.LinkedList;
/*
请用LinkedList模拟栈数据结构的集合,并测试
*/
public class MyStackDemo {
public static void main(String[] args) {
//创建一个集合
LinkedList list = new LinkedList();
//给集合添加元素
list.addFirst("阿三");
list.addFirst("阿四");
list.addFirst("阿五");
list.addFirst("阿六");
list.addFirst("阿七");
list.addFirst("阿八");
//遍历集合,并输出
Iterator it = list.iterator();
while(it.hasNext()){
String s = (String)it.next();
System.out.println(s);
}
}
}
java 16 - 5 LinkedList模拟栈数据结构的集合的更多相关文章
- 使用LinkedList模拟栈数据结构的集合
封装MyStack类 public class MyStack { private LinkedList link; //调用MyStack创建对象的时候其实是调用的LinkedList创建的是Lin ...
- 用LinkedList模拟栈数据结构的集合
用Eclipse软件进行操作 有2种方法,左边为第一种,右边为第二种 创建class为MyStack 代码实现: package cn_LinkedList; import java.uti ...
- Java基础知识强化之集合框架笔记29:使用LinkedList实现栈数据结构的集合代码(面试题)
1. 请用LinkedList模拟栈数据结构的集合,并测试: 题目的意思是: 你自己的定义一个集合类,在这个集合类内部可以使用LinkedList模拟,使用LinkedList功能方法封装成 ...
- 采用LinkedList来模拟栈数据结构的集合--先进后出
三.用LinkedList来模拟栈数据结构的集合 /* * 自定义一个数据结构为LinkedList的集合类*/public class MyCollection_LinkedList { publi ...
- java 16 -4 LinkedList的特有功能
了解 LinkedList的特有功能: A:添加功能 public void addFirst(Object e) public void addLast(Object e) B:获取功能 publi ...
- Java LinkedList特有方法程序小解 && 使用LinkedList 模拟一个堆栈或者队列数据结构。
package Collection; import java.util.LinkedList; /* LinkedList:特有的方法 addFirst()/addLast(); getFirst( ...
- JAVA堆,栈的区别,用AarrayList、LinkedList自定义栈
大家都知道java模拟机在运行时要开辟空间所以它有特定的五个内存划分: 1.寄存器: 2.本地方法区: 3.方法区: 4.栈内存: 5.堆内存: 但是我们今天来注重讲一下栈和堆 ...
- 使用LinkedList模拟一个堆栈或者队列数据结构
使用LinkedList模拟一个堆栈或者队列数据结构. 堆栈:先进后出 如同一个杯子. 队列:先进先出 如同一个水管. import java.util.LinkedList; public cl ...
- Java:基于LinkedList实现栈和队列
1.提供一组栈的接口,其底层关联到一个LinkedList(双端队列)实例.由于只暴露部分基于栈实现的接口,所以可以提供安全的栈实现. package junit; import java.util. ...
随机推荐
- 怎样在win7系统配置数据源
1.点击桌面的我Windows 图标,找打控制面板 2.进入控制面板主页,选择系统和安全,进入系统和安全 3.进入系统和安全主页后选择管理工具,点击进入 4.进入管理工具后,选择数据源,进行数据源的配 ...
- [Visual Studio Online] 移除Work Item(Feature、Backlog item、Task)
[Visual Studio Online] 移除Work Item(Feature.Backlog item.Task) 移除 项目的开发过程中,使用Visual Studio Online来做Sc ...
- 趣味题:恺撒Caesar密码(c++实现)
描述:Julius Caesar 生活在充满危险和阴谋的年代.为了生存,他首次发明了密码,用于军队的消息传递.假设你是Caesar 军团中的一名军官,需要把Caesar 发送的消息破译出来.并提供给你 ...
- jQuery对复选框(checkbox)的全选,全不选,反选等的操作
效果截图: HTML代码: <body><ul id="list"> <li><label><input type=" ...
- JSP利用freemarker生成基于word模板的word文档
利用freemarker生成基于word模板的word文档 freemarker简介 FreeMarker是一个用Java语言编写的模板引擎,它基于模板来生成文本输出.FreeMarker与Web容器 ...
- SharePoint 2013 中自定义WCF服务
在使用SharePoint2013的时候,如果其他客户端 API 的组合不足,可以通过自定义 Web 服务扩展 SharePoint.默认情况下,SharePoint 2013 不仅支持创建自定义 A ...
- STL--集和多集(set/multiset)
与基本容器相比,关联容器更注重快速和高效地检索数据的能力.这些容器是根据键值(key)来检索数据的,键可以是值也可以是容器中的某一成员.这一类中的成员在初始化后都是按一定顺序排好序的. 本文地址:ht ...
- iOS仿京东分类菜单之UICollectionView内容
在上<iOS仿京东分类菜单实例实现>已经实现了大部分主体的功能,本文是针对右边集合列表进行修改扩展,使它达到分组的效果,本文涉及到的主要是UICollectionView的知识内容,左边列 ...
- Struts2(十五)实现文件上传
一.导入包 需要将commons-fileupload和commons-io包和struts包一起导入 实现步骤: 在Jsp页面实现客户端选择上传文件 配置Struts.xml,拦截器会自动接收上传的 ...
- iOS网络检测Reachability 使用 Demo,可检测2、3、4G
你可以在Github下载这个Demo https://github.com/JanzTam/Reachability_Demo 首先,引入系统的Reachability类,不知道怎么引入的话,在Xco ...