用LinkedList和ArrayList实现自定义栈的异同

//ArrayList已连续的空间进行存储数据
  //LinkedList已链表的结构存储数据
  
  //栈
  MyStark ms=new MyStark();//new 一个实现栈的类
  //压栈
  ms.push("a");
  ms.push("b");
  ms.push("c");
  ms.push("d");
  ms.push("e");
  //取出元素
  for(int i=0;i<5;i++) {
   System.out.println(ms.prop());
  }

//一个实现栈的类

public class MyStark {
 
/ /使用ArrayList
// ArrayList arr=new ArrayList();
// public void push(Object  object) {
//  arr.add(0, object);
// }
// 
// public Object prop() {
//  //取第一个元素
//  Object o=arr.get(0);
//  arr.remove(0);
//  return o;
//  
// }
 
//使用LinkedList
 LinkedList  arr = new LinkedList();
 public   void  push(Object object) {
  arr.addFirst(object);
  
 }
 
 public  Object prop() {
  Object o=arr.getFirst();
  arr.removeFirst();
  return o;
 }
 
 
 
 

猜你喜欢

转载自www.cnblogs.com/ly-0919/p/10898751.html
今日推荐