removeFirstOccurrence(Object o) method of BlockingDeque Interface in Java.

removeFirstOccurrence(Object o) method of BlockingDeque Interface in Java.


Posted in : Core Java Posted on : March 4, 2011 at 6:07 PM Comments : [ 0 ]

It deletes the first occurrence of a specific element from deque in case, there are more than one such elements otherwise, it removes that particular element. The deque remains unchanged if the specified element does not exist in it and returns 'false' otherwise, returns 'true'.� 

removeFirstOccurrence(Object o) method of BlockingDeque Interface in Java.

In this section we will discuss how can removeFirstOccurrence(Object o) method be implemented in BlockingDeque interface in java.

Syntax

boolean removeFirstOccurrence(Object o)

This method deletes the first occurrence of a specific element from the deque.

It deletes the first occurrence of a specific element from deque in case, there are more than one such elements otherwise, it removes that particular element. The deque remains unchanged if the specified element does not exist in it and returns 'false' otherwise, returns 'true'. 

Parameter description

o : It takes an element what do you want to remove the first occurrence of the specified element from the deque.

Example of removeFirstOccurrence(Object o) method

In this example we will show you how does removeFirstOccurrence(Object o) method work in BlockingDeque interface. This example will help you to understand how can you remove the first occurrence of the specified element from the underlying deque.

Example :

package devmanuals.com;
import java.util.concurrent.BlockingDeque;
import java.util.concurrent.LinkedBlockingDeque;
class RemoveFirstOccurrence implements Runnable {
  BlockingDeque<Integer> bdq;
  String name;
  public RemoveFirstOccurrence(String name, BlockingDeque<Integer> bdq) {
    this.bdq = bdq;
    this.name = name;
  }
  public void run() {
    int i;
    System.out.println(name + " inserted the element into the deque");
    for (i = 0; i < 5; i++) {
      bdq.add(i);
      System.out.println(i);
      try {
        Thread.sleep(400);
      catch (InterruptedException e) {
        e.printStackTrace();
      }
    }
    bdq.add(2);
    System.out.println(name" adds the new element into the deque then new deque = "+ bdq);
    System.out.println("Size of deque = " + bdq.size());
    bdq.removeFirstOccurrence(2);
    System.out.println("Remaining element of deque after removing the "+"\n first occurrence of '2' = "+ bdq);
  }
}
class RemoveFirstOccurrence1 implements Runnable {
  String name;
  BlockingDeque<Integer> bdq;
  public RemoveFirstOccurrence1(String name, BlockingDeque<Integer> bdq) {
    this.bdq = bdq;
    this.name = name;
    }
  public void run() {
    try {
      bdq.remove();
      Thread.sleep(1500);
      System.out.println(name" deleted the first element then remaining deque = "+ bdq);
     System.out.println("Size of deque = " + bdq.size());
    catch (InterruptedException e) {
      e.printStackTrace();
   }
 }
}
public class BdqRemoveFirstOccurrence {
  public static void main(String args[]) {
    BlockingDeque<Integer> bdq = new LinkedBlockingDeque<Integer>(5);
    Runnable a = new RemoveFirstOccurrence("A", bdq);
    new Thread(a).start();
    try {
      Thread.sleep(400);
    catch (InterruptedException e) {
      e.printStackTrace();
    }
   Runnable b = new RemoveFirstOccurrence1("B", bdq);
    new Thread(b).start();
  }
}

Output :

A inserted the element into the deque

0

1

2

3

4

B deleted the first element then remaining deque = [1, 2, 3, 4]

Size of deque = 4

A adds the new element into the deque then new deque = [1, 2, 3, 4, 2]

Size of deque = 5

Remaining element of deque after removing the

first occurrence of '2' = [1, 3, 4, 2]

Download Source Code

Go to Topic «PreviousHomeNext»

Your Comment:


Your Name (*) :
Your Email :
Subject (*):
Your Comment (*):
  Reload Image
 
 

 
Tutorial Topics