Collection.removeIf is a very powerful method that acts on a condition. In the code sample below, there is a list which has a few elements in it and the condition is to list all elements that are not even numbers. The condition is specified in the Predicate.
Code snippet:
import java.util.function.Predicate;
import java.util.*;
public class CollectionsRemoveIf
{
public static void main(String args[])
{
CollectionsRemoveIf collectionsRemoveIf = new CollectionsRemoveIf();
collectionsRemoveIf.proceed();
}
private void proceed()
{
List numbers = new ArrayList();
numbers.add(1);
numbers.add(3);
numbers.add(5);
numbers.add(6);
numbers.add(7);
numbers.add(8);
Predicate removeEvenNumbers = i - i % 2 == 0;
System.out.println("Original list...");
for (int numberValue : numbers) {
System.out.println(numberValue);
}
//Predicate, the condition, is being added to the removeIf.
numbers.removeIf(removeEvenNumbers);
System.out.println("Odd numbers list...");
for (int numberValue : numbers) {
System.out.println(numberValue);
}
}
}
/*
Expected output:
[root@mypc]# java CollectionsRemoveIf
Original list...
1
3
5
6
7
8
Odd numbers list...
1
3
5
7
*/
Visit the DevX Tip Bank