package com.asse.ljb;
import java.util.Deque;
import java.util.linkedList;
import java.util.Queue;
import java.util.Stack;
public class GenericsTest {
public static void main(String[] args) {
System.out.println("-------Queue方法----------");
Queue queue = new linkedList();
//使用offer()添加元素优于add()方法,offer()不受容量限制
queue.offer("abc");
queue.offer("cde");
queue.offer("123");
queue.offer("bcd");
System.out.println(queue);
System.out.println("queue.element()获取队头但不移除:"+queue.element());
System.out.println(queue);
System.out.println("queue.peek()获取队头但不移除:"+queue.peek());
System.out.println(queue);
System.out.println("queue.poll()获取队头并移除:"+queue.poll());
System.out.println(queue);
System.out.println("queue.remove()移除队头:"+queue.remove());
System.out.println(queue);
System.out.println("--------Deque方法----------");
Deque deque = new linkedList();
deque.offer("abc");
deque.offer("cde");
deque.offer("123");
deque.offer("abc");
deque.offerFirst("head");//在队头添加元素
deque.offerLast("tail");//在队尾添加元素
System.out.println(deque);
System.out.println("deque.removeFirst()移除队头元素:"+deque.removeFirst());
System.out.println(deque);
System.out.println("deque.removeLast()移除队尾元素:"+deque.removeLast());
System.out.println(deque);
System.out.println("-------Stack方法------------");
Stack stack = new Stack();
stack.add("abc");
stack.add("cde");
stack.push("123");//push()方法进栈,栈顶进
stack.push("xyz");
System.out.println(stack);
System.out.println("stack.peek()方法得到栈顶元素:" + stack.peek());
System.out.println("search()方法检测一个元素在堆栈中的位置(0开始):" + stack.search("123"));
System.out.println("stack.pop()方法出栈(栈顶):"+stack.pop());
System.out.println(stack);
System.out.println("empty()方法测试堆栈是否为空:" + stack.empty());
}
}