Java中Queue接口的peek(),poll()和remove()方法之间的区别?

这表示缩进以在处理之前保存数据的集合。它是先进先出(FIFO)类型的布置。放入队列的第一个元素是从队列中取出的第一个元素。

peek()方法

此方法返回当前队列顶部的对象,而不删除它。如果队列为空,则此方法返回null。

import java.util.Iterator;
import java.util.LinkedList;
import java.util.Queue;
public class QueueExample {
   public static void main(String args[]) {
      Queue<String> queue = new LinkedList<String>();
      queue.add("Java");
      queue.add("JavaFX");
      queue.add("OpenCV");
      queue.add("Coffee Script");
      queue.add("HBase");
      System.out.println("Element at the top of the queue: "+queue.peek());
      Iterator<String> it = queue.iterator();
      System.out.println("Contents of the queue: ");
      while(it.hasNext()) {
         System.out.println(it.next());
      }
   }
}

输出结果

Element at the top of the queue: Java
Contents of the queue:
Java
JavaFX
OpenCV
Coffee Script
Hbase

poll()方法

Queue接口的peek()方法返回当前队列顶部的对象并将其删除。如果队列为空,则此方法返回null。

import java.util.Iterator;
import java.util.LinkedList;
import java.util.Queue;
public class QueueExample {
   public static void main(String args[]) {
      Queue<String> queue = new LinkedList<String>();
      queue.add("Java");
      queue.add("JavaFX");
      queue.add("OpenCV");
      queue.add("Coffee Script");
      queue.add("HBase");
      System.out.println("Element at the top of the queue: "+queue.poll());
      Iterator<String> it = queue.iterator();
      System.out.println("Contents of the queue: ");
      while(it.hasNext()) {
         System.out.println(it.next());
      }
   }
}

输出结果

Element at the top of the queue: Java
Contents of the queue:
JavaFX
OpenCV
Coffee Script
HBase