Close

Java Collections - ArrayBlockingQueue.remove() Examples

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]




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




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

Caused by: java.util.NoSuchElementException
at java.base/java.util.AbstractQueue.remove(AbstractQueue.java:117)
at com.logicbig.example.arrayblockingqueue.RemoveExample3.main(RemoveExample3.java:16)
... 6 more




See Also