Java Deque remove() 方法及示例



描述

java Deque remove() 方法检索并移除此双端队列表示的队列的头部

声明

以下是java.util.Deque.remove() 方法的声明

public E remove()

参数

返回值

此方法返回此双端队列表示的队列的头部

异常

NoSuchElementException − 如果此双端队列为空

带 Object 参数的 remove() 方法

描述

Java Deque remove(Object) 方法从此双端队列中移除指定元素的一个实例。

声明

以下是java.util.Deque.remove(o) 方法的声明

public boolean remove(Object o)

参数

o − 要从此双端队列中移除的元素(如果存在)

返回值

如果此双端队列包含指定的元素,则此方法返回true

异常

ClassCastException − 如果指定元素的类与此双端队列不兼容(可选)

NullPointerException − 如果指定的元素为 null,而此双端队列不允许 null 元素(可选)

示例 #1

以下示例演示了使用整数的 Java Deque remove() 方法的使用。我们创建一个整数双端队列,添加一些元素,打印它,然后使用 remove() 方法移除第一个元素。由于双端队列已修改,因此会打印出来以检查是否移除了第一个元素。

package com.tutorialspoint;

import java.util.ArrayDeque;
import java.util.Deque;

public class DequeDemo {
   public static void main(String[] args) {
      
      // create an empty array deque
      Deque<Integer> deque = new ArrayDeque<>();

      // use add() method to add elements in the deque
      deque.add(25);
      deque.add(30);
      deque.add(20);
      deque.add(18);        

      // let us print all the elements available in deque
      System.out.println("Deque = " + deque);

      // it will retrieve first element after removing from deque
      System.out.println("Retrieved Element is = " + deque.remove());
	  
      // let us print all the elements available in deque again
      System.out.println("Deque = " + deque);
   }
}

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

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

示例 #2

以下示例演示了使用字符串的 Java Deque remove() 方法的使用。我们创建一个字符串双端队列,添加一些元素,打印它,然后使用 remove() 方法获取第一个元素。由于双端队列已修改,因此会打印出来以检查是否移除了第一个元素。

package com.tutorialspoint;

import java.util.ArrayDeque;
import java.util.Deque;

public class DequeDemo {
   public static void main(String[] args) {
      
      // create an empty array deque
      Deque<String> deque = new ArrayDeque<>();

      // use add() method to add elements in the deque
      deque.add("A");
      deque.add("B");
      deque.add("C");
      deque.add("D");        

      // let us print all the elements available in deque
      System.out.println("Deque = " + deque);

      // it will retrieve first element after removing from deque
      System.out.println("Retrieved Element is = " + deque.remove());
	  
      // let us print all the elements available in deque again
      System.out.println("Deque = " + deque);
   }
}

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

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

示例 #3

以下示例演示了使用 Student 对象的 Java Deque remove(object) 方法的使用。我们创建一个 Student 对象的双端队列,添加一些元素,打印它,然后使用 remove(object) 方法移除特定学生。由于双端队列已修改,因此会打印出来以检查该 Student 对象是否已移除。

package com.tutorialspoint;

import java.util.ArrayDeque;
import java.util.Deque;

public class DequeDemo {
   public static void main(String[] args) {
      
      // create an empty array deque
      Deque<Student> deque = new ArrayDeque<>();

      // use add() method to add elements in the deque
      deque.add(new Student(1, "Julie"));
      deque.add(new Student(2, "Robert"));
      deque.add(new Student(3, "Adam"));       

      // let us print all the elements available in deque
      System.out.println("Deque = " + deque);

      // it will return true after removing Robert from deque
      System.out.println("Student removed :" + deque.remove(new Student(2, "Robert")));
	  
      // let us print all the elements available in deque again
      System.out.println("Deque = " + deque);
   }
}
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);
   }
}

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

Deque = [[ 1, Julie ], [ 2, Robert ], [ 3, Adam ]]
Student removed : true
Deque = [[ 1, Julie ], [ 3, Adam ]]
java_util_deque.htm
广告