Skip to content

Make Selenium Easy

And Keep It That Way

  • Home
  • Share
  • Toggle search form

How To Filter List Using Java Stream API?

Posted on 03/21/2025 By admin

Stream API feature was introduced in Java 8 but it is still confusing for many and also many have not even used it a single time. I will try to explain Java Stream concepts with simple examples in Learn Stream API in Java with Examples series.

In this post, we will learn to filter a Java List using Stream APIs i.e. filter() method.

If you want to learn from a video tutorial then please refer to the below video –

We may be required to filter a Java List based on one or multiple conditions. We need to iterate the array and apply filter conditions. Let’s write a very simple program to filter a list.

package solveproblemswithsreams; import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors; public class FilterListUsingJavaStreamAPI { public static void main(String[] args) { List allSubjets = Arrays.asList("Java","Functional Testing", "Performace Testing", "Selenium Testing", "Mongo DB"); List allTestingSubjects = new ArrayList(); // Iterating the list for(String ele : allSubjets) { // filter condition if(ele.contains("Testing")) allTestingSubjects.add(ele); } System.out.println("All subjects : "+ allSubjets); System.out.println("All testing subjects : "+ allTestingSubjects); } }

All subjects : [Java, Functional Testing, Performace Testing, Selenium Testing, Mongo DB]
All testing subjects : [Functional Testing, Performace Testing, Selenium Testing]

Stream interface provides a method filter() which helps you to filter a list based on condition/s. The filter() method takes a Predicate which is a functional interface. We can use the lambda expressions to write shorter code.

  1. Get a sequential stream of List using stream() method.
  2. Call filter() method with the condition on stream.
  3. Collect results into a List.
package solveproblemswithsreams; import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors; public class FilterListUsingJavaStreamAPI { public static void main(String[] args) { List allSubjets = Arrays.asList("Java","Functional Testing", "Performace Testing", "Selenium Testing", "Mongo DB"); List allTestingSubjects = new ArrayList(); allTestingSubjects = allSubjets .stream() .filter(ele -> ele.contains("Testing")) .collect(Collectors.toList()); System.out.println("All subjects : "+ allSubjets); System.out.println("All testing subjects : "+ allTestingSubjects); }
}

All subjects : [Java, Functional Testing, Performace Testing, Selenium Testing, Mongo DB]
All testing subjects : [Functional Testing, Performace Testing, Selenium Testing]

You can use multiple conditions as below –

.filter(ele -> ele.contains(“Testing”) && ele.contains(“Selenium”))

https://github.com/amod-mahajan/MSE_LearnJavaStreamsWithExamples.git

If you have any doubt, feel free to comment below.
If you like my posts, please like, comment, share and subscribe to my YouTube channel.
#ThanksForReading
#HappyLearning

Uncategorized

Post navigation

Previous Post: Java Program To Find Closest Value Of A Given Number in Unsorted Array
Next Post: Test Automation Is Needed But Not As Magic

Related Posts

Understand Verification & Validation In Software Testing Uncategorized
March 2018 – Make Selenium Easy Uncategorized
API Testing Tutorial Part 10 – Introduction of SOAP (Simple Object Access Protocol) Uncategorized
TestNG Tutorials 46: Overriding Parameters in TestNG Uncategorized
image – Make Selenium Easy Uncategorized
Make Selenium Easy | Make Selenium Easy – Selenium Tutorials : End To End Uncategorized

Recent Posts

  • Getting Started with Selenium 4: What Is New and How to Upgrade from Selenium 3
  • Manual Testing
  • Baby Steps To Become Efficient Selenium-Java Automation Tester
  • Features of Selenium 4.0.0 Release – Java Binding
  • Part 1: Handling Drop-down Created Using SELECT Tag In Selenium

Recent Comments

No comments to show.

Archives

  • April 2026
  • April 2025
  • March 2025
  • February 2025
  • January 2025
  • December 2024
  • November 2024
  • October 2024
  • September 2024
  • August 2024
  • April 2024
  • March 2024
  • February 2024
  • December 2023
  • October 2023
  • August 2023
  • November 2022
  • September 2022
  • August 2022
  • July 2022
  • May 2022
  • March 2022
  • October 2021
  • April 2021
  • March 2021
  • January 2021
  • December 2020
  • October 2020
  • September 2020
  • August 2020
  • June 2020
  • May 2020
  • April 2020
  • March 2020
  • February 2020
  • January 2020
  • December 2019
  • November 2019
  • October 2019
  • September 2019
  • August 2019
  • May 2019
  • December 2018
  • November 2018
  • October 2018
  • September 2018
  • August 2018
  • July 2018
  • January 2018

Categories

  • Getting Started
  • Uncategorized

Copyright © 2026 Make Selenium Easy.

Powered by PressBook Masonry Dark