Java中ArrayDeque,栈与队列

package ch8;
import java.util.*; /**
* Created by Jiqing on 2016/11/27.
*/
public class ArrayDequeStack {
public static void main(String[] args) {
ArrayDeque stack = new ArrayDeque();
// 依次将三个元素push入“栈”,先进后出
stack.push("疯狂Java讲义");
stack.push("轻量级Java EE企业应用实战");
stack.push("疯狂Android讲义");
System.out.println(stack); // [疯狂Android讲义, 轻量级Java EE企业应用实战, 疯狂Java讲义]
System.out.println(stack.peek()); // 疯狂Android讲义
System.out.println(stack); // [疯狂Android讲义, 轻量级Java EE企业应用实战, 疯狂Java讲义]
System.out.println(stack.pop()); // 疯狂Android讲义
System.out.println(stack);//[轻量级Java EE企业应用实战, 疯狂Java讲义] // 当做队列来使用,先进先出
ArrayDeque queue = new ArrayDeque();
queue.offer("疯狂Java讲义");
queue.offer("轻量级JavaEE企业应用实践");
queue.offer("疯狂Android讲义");
System.out.println(queue); //[疯狂Java讲义, 轻量级JavaEE企业应用实践, 疯狂Android讲义]
// 访问队列头部元素,但不将其poll出队列
System.out.println(queue.peek());
System.out.println(queue);
// poll出第一个元素
System.out.println(queue.poll());
System.out.println(queue);// [轻量级JavaEE企业应用实践, 疯狂Android讲义]
}
}

输入结果:

[疯狂Android讲义, 轻量级Java EE企业应用实战, 疯狂Java讲义]

疯狂Android讲义

[疯狂Android讲义, 轻量级Java EE企业应用实战, 疯狂Java讲义]

疯狂Android讲义

[轻量级Java EE企业应用实战, 疯狂Java讲义]

[疯狂Java讲义, 轻量级JavaEE企业应用实践, 疯狂Android讲义]

疯狂Java讲义

[疯狂Java讲义, 轻量级JavaEE企业应用实践, 疯狂Android讲义]

疯狂Java讲义

[轻量级JavaEE企业应用实践, 疯狂Android讲义]

上一篇:UNIX网络编程——原始套接字(dos攻击)


下一篇:项目管理之 Objective-C 编码规范