这里写自定义目录标题
模拟栈的使用
模拟栈的使用
hello 大家好我是橘子
以前比较笨吧,反正写代码C比较多,之后学了java,今天心血来潮写了一个关于的栈的模拟,我发现真的多写一些微博,比如之前自学的深拷贝,浅拷贝问题,自己理解的还可以,但是时间长了就忘了
说明一下吧,因为栈这个东西,无非就是先进后出,你可以把他想象成一个盒子,你先放进的书,就得后面拿出来。压箱底压箱底就是这么来的。
package cn.itcast_06;
import java.util.LinkedList;
public class MyStack{
private LinkedList link;
public MyStack(){
link = new LinkedList();
}
public void push(Object e){
link.addFirst(e);
}
public Object pop(){
return link.removeFirst();
}
public Object get(int i){
return link.get(i);
}
@Override
public String toString() {
return "MyStack [link=" + link + "]";
}
public boolean isEmpty(){
return link.isEmpty();
}
}
package cn.itcast_06;
/*
* LinkedList
* 请使用LinkedList模拟栈数据结构的集合,并测试
* 题目的意思是:
* 你自己定义一个集合类,在这个集合类内部可以使用LinkedList。
* 然后你使用LinkedList的方法在集合类中使用
*/
public class LinkedListDemo {
public static void main(String[] args) {
//A:LinkedList的特有功能addFirst();
//B:栈的特点先进后出
MyStack ms = new MyStack();
ms.push("hello");
ms.push("world");
ms.push("java");
if(!ms.isEmpty()){
ms.pop();
}
System.out.println(ms);
}
}
}