The removeIf() method of ArrayDeque is used to remove all those elements from ArrayDeque which satisfies a given predicate filter condition passed as a parameter to the method. This method returns true if some element are removed from the Vector.
Java 8 has an important in-built functional interface which is Predicate. Predicate, or a condition checking function, which checks the given input for a given condition and returns a boolean result for the same indicating whether the condition was met or not.
Syntax:
public boolean removeIf(Predicate<? super E> filter)
Parameter: This method takes a parameter filter which represents a predicate which returns true for elements to be removed.
Returns: This method returns True if predicate returns true and some elements were removed.
Exception: This method throws NullPointerException if the specified filter is null.
Below programs illustrate removeIf() method of ArrayDeque:
Example 1: To demonstrate removeIf() method on ArrayDeque which contains a set of String and remove strings starts with A.
import java.util.*;
public class GFG {
public static void main(String[] args)
{
ArrayDeque<String> students = new ArrayDeque<String>();
students.add( "Aman" );
students.add( "Sanjeet" );
students.add( "Amar" );
students.add( "Rabi" );
students.add( "Shabbir" );
students.removeIf(n -> (n.charAt( 0 ) == 'A' ));
System.out.println( "Students name do not starts with A" );
for (String str : students) {
System.out.println(str);
}
}
}
|
Output:
Students name do not starts with A
Sanjeet
Rabi
Shabbir
Example 2: To demonstrate removeIf() method on ArrayDeque which contains set of Students objects to remove all those students who got less than 40 marks.
import java.util.*;
public class GFG {
public static void main(String[] args)
{
ArrayDeque<student> students = new ArrayDeque<student>();
students.add( new student( "Aman" , 78 ));
students.add( new student( "Amar" , 79 ));
students.add( new student( "Suraj" , 38 ));
students.add( new student( "Raju" , 22 ));
students.add( new student( "Ankit" , 76 ));
students.add( new student( "Sanju" , 62 ));
students.removeIf(n -> (n.marks <= 40 ));
System.out.println( "Students list who score above 40" );
for (student str : students) {
System.out.println(str.name + ", " + str.marks);
}
}
}
class student {
public String name;
public int marks;
student(String name, int marks)
{
this .name = name;
this .marks = marks;
}
}
|
Output:
Students list who score above 40
Aman, 78
Amar, 79
Ankit, 76
Sanju, 62
Example 3: To demonstrate NullpointerException in removeIf() method.
import java.util.*;
public class GFG {
public static void main(String[] args)
{
ArrayDeque<String> students = new ArrayDeque<String>();
students.add( "Aman" );
students.add( "Sanjeet" );
students.add( "Amar" );
students.add( "Rabi" );
students.add( "Shabbir" );
try {
students.removeIf( null );
}
catch (Exception e) {
System.out.println( "Exception: " + e);
}
}
}
|
Output:
Exception: java.lang.NullPointerException
Reference: https://docs.oracle.com/javase/10/docs/api/java/util/ArrayDeque.html#removeIf(java.util.function.Predicate)
Whether you're preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape,
GeeksforGeeks Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we've already empowered, and we're here to do the same for you. Don't miss out -
check it out now!
Last Updated :
10 Dec, 2018
Like Article
Save Article