Close

Java Collections - ArrayBlockingQueue.remove() Examples

[Last Updated: Dec 11, 2025]

Java Collections Java Java API 


Class:

java.util.concurrent.ArrayBlockingQueue

java.lang.Objectjava.lang.Objectjava.util.AbstractCollectionjava.util.AbstractCollectionjava.util.CollectionCollectionjava.util.AbstractQueuejava.util.AbstractQueuejava.util.QueueQueuejava.util.concurrent.ArrayBlockingQueuejava.util.concurrent.ArrayBlockingQueuejava.util.concurrent.BlockingQueueBlockingQueuejava.io.SerializableSerializableLogicBig

Methods:

public boolean remove(Object o)

Removes a single instance of the specified element from this queue, if it is present.



E remove()

Retrieves and removes the head of this queue. This method differs from poll() only in that it throws an exception if this queue is empty.

Examples


package com.logicbig.example.arrayblockingqueue;

import java.util.Arrays;
import java.util.concurrent.ArrayBlockingQueue;

public class RemoveExample {

public static void main(String... args) {
ArrayBlockingQueue<Integer> q = new ArrayBlockingQueue<>(3, true, Arrays.asList(1, 3, 5));
System.out.println("queue before: " + q);
boolean b = q.remove(3);
System.out.println(b);
b = q.remove(7);
System.out.println(b);
System.out.println("queue after: " + q);

}
}

Output

queue before: [1, 3, 5]
true
false
queue after: [1, 5]
JDK 25




package com.logicbig.example.arrayblockingqueue;

import java.util.Arrays;
import java.util.concurrent.ArrayBlockingQueue;

public class RemoveExample2 {

public static void main(String... args) {
ArrayBlockingQueue<Integer> q = new ArrayBlockingQueue<>(2, true, Arrays.asList(1, 3));
System.out.println("queue: " + q);
Integer i = q.remove();
System.out.println(i);
i = q.remove();
System.out.println(i);
}
}

Output

queue: [1, 3]
1
3
JDK 25




Throws exception if queue is empty:

package com.logicbig.example.arrayblockingqueue;

import java.util.Arrays;
import java.util.concurrent.ArrayBlockingQueue;

public class RemoveExample3 {

public static void main(String... args) {
ArrayBlockingQueue<Integer> q = new ArrayBlockingQueue<>(2);
Integer i = q.remove();
System.out.println(i);
}
}

Output

java.util.NoSuchElementException
at java.util.AbstractQueue.remove (AbstractQueue.java:117)
at com.logicbig.example.arrayblockingqueue.RemoveExample3.main (RemoveExample3.java:16)
at jdk.internal.reflect.DirectMethodHandleAccessor.invoke (DirectMethodHandleAccessor.java:104)
at java.lang.reflect.Method.invoke (Method.java:565)
at java.lang.Thread.run (Thread.java:1474)
JDK 25




See Also

Join