使用LinkedList完成一个堆栈MyStack

public class MyStack {
			//弹夹:
			private LinkedList ls=new LinkedList();

			//装弹(压栈):
			public void push(Object obj){

			ls.addFirst(obj); //每次都把子弹增加到第一颗,把原来的压到下面去

			}

			//打枪(出栈):
			public Object pop(){

				Object obj = ls.getFirst();//取出第一颗子弹
				ls.removeFirst(); //移除第一颗子弹
				return obj;//返回刚刚打出的子弹
			}

			//计算弹夹中子弹数量:
			public int size(){

			return ls.size();

			}

			public static void main(String[] args) {

			MyStack ms=new MyStack();

			ms.push("a");//装第一颗子弹

			ms.push("b");

			ms.push("c");

			ms.push("d");//装最后一颗子弹

			while(ms.size()!=0){//如果子弹数量不等于0,就一直循环

				System.out.println(ms.pop());

			}

			}

 * 1、 LinkedList是以链表的结构存储数据,查询慢、增删改快
    *LinkedList的特有方法:
    *1.1、addFirst(E e) : 向集合中的开头添加元素
    *1.2、addLast(E e):向集合的末尾添加元素
    *1.3、getFirst():得到集合中的第一个元素
    *1.4、getLast():得到集合中的最后一个元素
    *1.5、removeFirst():删除集合中的第一个元素
    *1.6、removeLast():删除集合中的最后一个元素
    *1.7、pop(E e) : 从集合的最上面弹出一个元素
    *1.8、push():向集合的最上面添加元素
    *1.9、isEmpty() : 判断集合中是否有为空
 * 2、堆栈结构有先进后出的特点,就像弹夹一样,先进去的在后进去的低下。
 * 3、在开发时,LinkedList集合也可以作为堆栈,队列的结构使用。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值