Java中的 AbstractQueue remove() 方法及示例
AbstractQueue的remove()方法返回并移除此队列的头部。
句法:
public E remove()
参数:此方法不接受任何参数。
返回:该方法返回队列的头部。
异常:如果队列为空,该函数将引发NoSuchElementException 。
下面的程序说明了remove()方法:
方案一:
// Java program to illustrate the
// AbstractQueue remove() method
import java.util.*;
import java.util.concurrent.LinkedBlockingQueue;
public class GFG1 {
public static void main(String[] argv)
throws Exception
{
// Creating object of AbstractQueue
AbstractQueue
AQ1 = new LinkedBlockingQueue();
// Populating AQ1
AQ1.add(10);
AQ1.add(20);
AQ1.add(30);
AQ1.add(40);
AQ1.add(50);
// print AQ
System.out.println("AbstractQueue1 contains : " + AQ1);
// retrieves the head
int head = AQ1.remove();
System.out.println("head : " + head);
// print AQ
System.out.println("AbstractQueue1 after removal of head : " + AQ1);
}
}
输出:
AbstractQueue1 contains : [10, 20, 30, 40, 50]
head : 10
AbstractQueue1 after removal of head : [20, 30, 40, 50]
方案二:
// Java program to illustrate the
// AbstractQueue element() method
// NoSuchElementException
// Java program to illustrate the
// AbstractQueue remove() method
import java.util.*;
import java.util.concurrent.LinkedBlockingQueue;
public class GFG1 {
public static void main(String[] argv)
throws Exception
{
try {
// Creating object of AbstractQueue
AbstractQueue
AQ1 = new LinkedBlockingQueue();
// Populating AQ1
AQ1.add(10);
// print AQ
System.out.println("AbstractQueue1 contains : " + AQ1);
// retrieves the head
int head = AQ1.remove();
System.out.println("head : " + head);
// retrieves the head again
head = AQ1.remove();
System.out.println("head : " + head);
}
catch (Exception e) {
System.out.println("Exception: " + e);
}
}
}
输出:
AbstractQueue1 contains : [10]
head : 10
Exception: java.util.NoSuchElementException
参考: https: Java/util/AbstractQueue.html#remove–