How to Filter Elements of a List based on a Condition in Java


How to Filter Elements of a List based on a Condition in Java ?

Answer

To filter elements of a list based on a condition in Java, you can use the Stream API along with lambda expressions.



✐ Examples

1 Filter Integers Greater Than a Threshold

In this example,

  1. We create a list named numbers with integer values.
  2. We use the stream() method to create a stream of elements from the list.
  3. We use the filter method along with a lambda expression to filter elements greater than a threshold value.
  4. Finally, we collect the filtered elements into a new list.

Java Program

import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;

public class Main {
    public static void main(String[] args) {
        List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);
        int threshold = 3;
        List<Integer> filteredNumbers = numbers.stream()
                                            .filter(num -> num > threshold)
                                            .collect(Collectors.toList());
        System.out.println("Filtered list: " + filteredNumbers);
    }
}

Output

Filtered list: [4, 5]

2 Filter Strings Containing a Substring

In this example,

  1. We create a list named words with string values.
  2. We use the stream() method to create a stream of elements from the list.
  3. We use the filter method along with a lambda expression to filter elements containing a specific substring.
  4. Finally, we collect the filtered elements into a new list.

Java Program

import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;

public class Main {
    public static void main(String[] args) {
        List<String> words = Arrays.asList("apple", "banana", "cherry", "date", "elderberry");
        String substring = "erry";
        List<String> filteredWords = words.stream()
                                        .filter(word -> word.contains(substring))
                                        .collect(Collectors.toList());
        System.out.println("Filtered list: " + filteredWords);
    }
}

Output

Filtered list: [cherry, elderberry]

Summary

In this tutorial, we learned How to Filter Elements of a List based on a Condition in Java language with well detailed examples.




More Java Lists Tutorials

  1. How to create an Empty List in Java ?
  2. How to Initialize a List in Java ?
  3. How to Get Length of a List in Java ?
  4. How to create a List of size N in Java ?
  5. How to create a List of Numbers from 1 to N in Java ?
  6. How to create a List of Strings in Java ?
  7. How to create a List of Empty Lists in Java ?
  8. How to Access Elements in a List in Java ?
  9. How to get Element in a List at a Specific Index in Java ?
  10. How to get First Element in a List in Java ?
  11. How to get Last Element in a List in Java ?
  12. How to Iterate Over a List in Java ?
  13. How to Iterate Over a List with Index in Java ?
  14. How to Iterate Over a List in Reverse Order in Java ?
  15. How to check if a List is Empty in Java ?
  16. How to check if a List is Not Empty in Java ?
  17. How to get Sub List in Java ?
  18. How to get the Index of Specified Element in a List in Java ?
  19. How to check if a Specific Element is present in the List in Java ?
  20. How to check if a List contains all the elements of Another List in Java ?
  21. How to count the Number of Occurrences of Specific Element in the List in Java ?
  22. How to find the Element with Maximum Number of Occurrences in a List in Java ?
  23. How to find the Element with Minimum Number of Occurrences in a List in Java ?
  24. How to Sort a List in Java ?
  25. How to Sort a List in Ascending Order in Java ?
  26. How to Sort a List in Descending Order in Java ?
  27. How to create a Two Dimensional List in Java ?
  28. How to Iterate over a Two Dimensional List in Java ?
  29. How to create a Three Dimensional List in Java ?
  30. How to Copy a List in Java ?
  31. How to deep Copy a List in Java ?
  32. How to Split a List in Java ?
  33. How to Join Lists in Java ?
  34. How to Append an Element to a List in Java ?
  35. How to Insert an Element at Specific Index in a List in Java ?
  36. How to Append a List to another List in Java ?
  37. How to Concatenate Two Lists in Java ?
  38. How to check if Two Lists are Equal in Java ?
  39. How to check if Two Lists have Same Elements (Regardless of Order) in Java ?
  40. How to Convert a List of Integers to a List of Strings in Java ?
  41. How to Convert a List of Strings to a List of Integers in Java ?
  42. How to Convert a List of Floats to a List of Strings in Java ?
  43. How to Convert a List of Strings to a List of Floats in Java ?
  44. How to Reverse a List in Java ?
  45. How to Shuffle a List in Java ?
  46. How to Slice a List in Java ?
  47. How to Slice First N Elements from a List in Java ?
  48. How to Slice Last N Elements from a List in Java ?
  49. How to Rotate Elements in a List in Java ?
  50. How to Filter Elements of a List based on a Condition in Java ?
  51. How to Remove Duplicates in a List in Java ?
  52. How to Remove Element at a Specific Index from a List in Java ?
  53. How to Remove Specific Element from a List in Java ?
  54. How to Remove Element from List based on a Condition in Java ?
  55. How to Sort a List of Strings in Dictionary Order in Java ?
  56. How to Concatenate Strings in List in Java ?
  57. How to create a List of Lists in Java ?
  58. How to create a List of Dictionaries in Java ?
  59. How to create a List of Sets in Java ?