堆栈与队列

来源:互联网 发布:盟军敢死队2 mac版 编辑:程序博客网 时间:2024/06/05 10:47
package copy;
//LinkedList
import java.util.*;
public class Demo7 {


/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
/*
* ArrayList与LinkedList的区别
* 两者都是List接口的实现类
* 但是ArrayList底层是数组,所以一定要有长度
* LinkedList底层是链表数据结构,所以不需要规定长度

* LinkedList特有的方法(好像没有将ArrayList特有的方法)
* 1.void addFirst(E e)
* 将指定元素插入列表开头
* void addLast(E e)
* 将指定元素添加到此列表的结尾
* E getFirst()
* 返回此列表的第一个元素
* E getLast()
* 返回此列表的最后一个元素
* 2.
* Iterator<E> descendingIterator()
* 以逆向顺序再次双端的元素上进行迭代的迭代器
* 3.
* 堆栈数据结构相关
* E pop()
* 从此列表所表示的堆栈处弹出一个元素
* void push(E e)
* 将元素推入此列表所表示的堆栈

* 4.队列数据结构
* E poll()
* 获取并移除此列表的头一个元素
* boolean offer(E e)
* 将指定元素添加到此列表的末尾

*/
LinkedList list = new LinkedList();
list.add("1");
list.add("2");
list.add("3");
list.add("4");


list.addFirst("胖胖");
System.out.println(list);
list.addLast("默默");
System.out.println(list);

//堆栈,先进后出
list.push("推");
System.out.println(list);
String a =(String)list.pop();//这里必须给他强制转换,否则报错
System.out.println(list);
System.out.println(a);

//先进先出  队列
list.offer("尾巴");
System.out.println(list);//在末端添加元素
String b =(String)list.poll();//其实弹出的是索引为的元素,并不是我在创造集合时候放的第一个数
//他所说的第一个只是索引为0的元素
System.out.println(list);
System.out.println(b);


}


}
0 0
原创粉丝点击