Java Queue接口

描述

Java Queue element() 返回队列的头部元素但不删除。此方法与 peek 的不同之处仅在于,如果此队列为空,它会引发异常。

声明

以下是 java.util.Queue.element() 的方法声明

public E element() 

参数

返回值

此方法返回队列的头部元素

异常

NoSuchElementException - 如果队列

示例 1

以下示例显示 Java Queue element() 方法与整数的用法。我们正在创建一个整数的 LinkedList,添加一些元素,打印它,然后使用 element() 方法获取第一个元素。队列保持不变。

package com.yxjc123;

import java.util.LinkedList;
import java.util.Queue;

public class QueueDemo {
   public static void main(String[] args) {
      
      //创建一个空队列
      Queue<Integer> queue = new LinkedList<>();

      //使用add()方法向队列添加元素
      queue.add(25);
      queue.add(30);
      queue.add(20);
      queue.add(18);        

      //让我们打印队列中所有可用的元素
      System.out.println("Queue = " + queue);

      //它将检索第一个(头)位置的元素
      System.out.println("Retrieved Element is = " + queue.element());
	  
      //让我们再次打印队列中所有可用的元素
      System.out.println("Queue = " + queue);
   }
} 

输出

让我们编译并运行上面的程序,这将产生以下结果 

Queue = [25, 30, 20, 18]
Retrieved Element is = 25
Queue = [25, 30, 20, 18] 

示例 2

以下示例显示了 Java Queue element() 方法与字符串的用法。我们正在创建一个字符串的 LinkedList,添加一些元素,打印它,然后使用 element() 方法获取第一个元素。队列保持不变。

package com.yxjc123;

import java.util.LinkedList;
import java.util.Queue;

public class QueueDemo {
   public static void main(String[] args) {
      
      //创建一个空队列
      Queue<String> queue = new LinkedList<>();

      //使用add()方法向队列添加元素
      queue.add("A");
      queue.add("B");
      queue.add("C");
      queue.add("D");        

      //让我们打印队列中所有可用的元素
      System.out.println("Queue = " + queue);

      //它将检索第一个(头)位置的元素
      System.out.println("Retrieved Element is = " + queue.element());
	  
      //让我们再次打印队列中所有可用的元素
      System.out.println("Queue = " + queue);
   }
} 

输出

让我们编译并运行上面的程序,这将产生以下结果 

Queue = [A, B, C, D]
Retrieved Element is = A
Queue = [A, B, C, D] 

示例 3

以下示例显示了 Java Queue element() 方法与 Student 对象的用法。我们正在创建一个 Student 对象的 LinkedList,添加一些学生,打印它,然后使用 element() 方法获取第一个学生。队列保持不变。

package com.yxjc123;

import java.util.LinkedList;
import java.util.Queue;

public class QueueDemo {
   public static void main(String[] args) {
      
      //创建一个空队列
      Queue<Student> queue = new LinkedList<>();

      //使用add()方法向队列添加元素
      queue.add(new Student(1, "Julie"));
      queue.add(new Student(2, "Robert"));
      queue.add(new Student(3, "Adam"));       

      //让我们打印队列中所有可用的元素
      System.out.println("Queue = " + queue);

      //它将检索第一个(头)位置的元素
      System.out.println("Retrieved Element is = " + queue.element());
	  
      //让我们再次打印队列中所有可用的元素
      System.out.println("Queue = " + queue);
   }
}
class Student {
   int rollNo;
   String name;

   Student(int rollNo, String name){
      this.rollNo = rollNo;
      this.name = name;
   }

   @Override
   public String toString() {
      return "[ " + this.rollNo + ", " + this.name + " ]";
   }
   
   @Override
   public boolean equals(Object obj) {
      Student s = (Student)obj;
      return this.rollNo == s.rollNo && this.name.equalsIgnoreCase(s.name);
   }
} 

输出

让我们编译并运行上面的程序,这将产生以下结果 

Queue = [[ 1, Julie ], [ 2, Robert ], [ 3, Adam ]]
Retrieved Element is = [ 1, Julie ]
Queue = [[ 1, Julie ], [ 2, Robert ], [ 3, Adam ]]