使用LinkedList实现堆栈特点:堆栈先进后出.
一.步骤:
1.装子弹(LinkedList)
private LinkedList lst=new LinkedList();
2.压栈(放子弹)
public void push(Object obj) {
lst.addFirst(obj);
}
3.计算子弹数量。
public int size() {
return lst.size();
}
4.出栈(出子弹)
public Object pop() {
Object first = lst.getFirst();
lst.removeFirst();
return first;
}
二:代码总览+测试:
package com.zking.util;
/**
* 使用LinkedList实现堆栈
* 特点:堆栈先进后出
* @author 李婷
*
*/import java.util.LinkedList;
public class MyStack {
//装子弹(LinkedList)
private LinkedList lst=new LinkedList();
/**
* 压栈(放子弹)
*/
public void push(Object obj) {
lst.addFirst(obj);
}
public Object pop() {
Object first = lst.getFirst();
lst.removeFirst();
return first;
}
/**
* 计算子弹数量
* @return
*/
public int size() {
return lst.size();
}
public static void main(String[] args) {
//初始化
MyStack myStack = new MyStack();
myStack.push("1");
myStack.push("2");
myStack.push("3");
myStack.push("4");
myStack.push("5");
while(myStack.size()!=0) {
System.out.println(myStack.pop());
}
System.out.println(new MyStack().size());
}
}