Queue(队列)&Deque(双端队列)的小结:
1. 队列,存放元素先进先出,业务需要排队要求的时候可以用
2.栈(stack), 双端队列两边都可以进出队 ,当只调用从一端进出队操作时,就形成了栈结构。存取元素先进后出,业务有后退功能时会使用栈,
3. LinkedList也实现了队列的接口,因为它可以保存一组元素, 首尾增删快,正好符合队列的特点
4.方法都是3(存,取,取不删)+2(遍历2种方式)
******************************************************************************************
知识点1.(下划线是第二种方式)
public class demo1 {
public static void main(String[] args) {
Queue<String> queue=new LinkedList<String>();
queue.offer("one");//存
String str=queue.poll();//取
String str1=queue.peek();//取不删
System.out.println(queue.size());//个数
for(int i=queue.size();i>0;i--){//队列的遍历,倒着,正着循环次数不够
str=queue.poll();
System.out.println(str);
}
while(queue.size()>0){
str=queue.poll();
System.out.println("元素:"+str);
}
System.out.println(queue);
}
}
知识点2.
public class demo2 {
public static void main(String[] args) {
Deque <String> stack=new LinkedList<String>();
stack.push("one");//存
String str=stack.pop();//取
str=stack.peek();//取不删
while(stack.size()>0){//跟queue一样
str=stack.pop();
System.out.println(str);
}
}
}