C# | How to get all elements of a List that match the conditions specified by the predicate Last Updated : 30 Aug, 2022 Summarize Comments Improve Suggest changes Share Like Article Like Report List<T>.FindAll(Predicate<T>) Method is used to get all the elements that match the conditions defined by the specified predicate. Properties of List: It is different from the arrays. A list can be resized dynamically but arrays cannot.List class can accept null as a valid value for reference types and it also allows duplicate elements.If the Count becomes equals to Capacity then the capacity of the List increases automatically by reallocating the internal array. The existing elements will be copied to the new array before the addition of the new element. Syntax: public System.Collections.Generic.List<T> FindAll (Predicate<T> match); Parameter: match: It is the Predicate<T> delegate that defines the conditions of the elements which is to be searched. Return value: This method returns a List<T> containing all the elements that match the conditions defined by the specified predicate otherwise it returns an empty List<T>. Exception: This method will give ArgumentNullException if the match is null. Below programs illustrate the use of List<T>.FindAll(Predicate<T>) Method: Example 1: CSharp // C# Program to get all the element that // match the specified conditions defined // by the predicate using System; using System.Collections; using System.Collections.Generic; class Geeks { // function which checks whether an // element is even or not. Or you can // say it is the specified condition private static bool isEven(int i) { return ((i % 2) == 0); } // Main Method public static void Main(String[] args) { // Creating an List<T> of Integers List<int> firstlist = new List<int>(); // Adding elements to List firstlist.Add(2); firstlist.Add(4); firstlist.Add(7); firstlist.Add(2); firstlist.Add(3); firstlist.Add(2); firstlist.Add(4); Console.WriteLine("Elements Present in List:\n"); // Displaying the elements of List foreach(int k in firstlist) { Console.WriteLine(k); } Console.WriteLine(" "); Console.Write("Elements that Match: \n"); // Will give the List of Elements that // match the conditions defined by predicate List<int> Result = new List<int>(firstlist.FindAll(isEven)); foreach(int i in Result) { Console.WriteLine(i); } } } Output: Elements Present in List: 2 4 7 2 3 2 4 Elements that Match: 2 4 2 2 4 Example 2: CSharp // C# Program to get all the element that // match the specified conditions defined // by the predicate using System; using System.Collections; using System.Collections.Generic; class Geeks { // function which checks whether an // element is even or not. Or you can // say it is the specified condition private static bool isEven(int i) { return ((i % 2) == 0); } // Main Method public static void Main(String[] args) { // Creating an List<T> of Integers List<int> firstlist = new List<int>(); // Adding elements to List firstlist.Add(17); firstlist.Add(77); firstlist.Add(15); firstlist.Add(9); firstlist.Add(3); firstlist.Add(7); firstlist.Add(57); Console.WriteLine("Elements Present in List:\n"); // Displaying the elements of List foreach(int k in firstlist) { Console.WriteLine(k); } Console.WriteLine(" "); Console.Write("Result is: "); // Will give the List of Elements that // match the conditions defined by predicate // Here no even number found in the list // so it will return an empty list List<int> Result = new List<int>(firstlist.FindAll(isEven)); // checking for the resultant // Elements in the List if ((Result.Count) == 0) { Console.WriteLine("No Match Found"); } } } Output: Elements Present in List: 17 77 15 9 3 7 57 Result is: No Match Found Reference: https://docs.microsoft.com/en-us/dotnet/api/system.collections.generic.list-1.findall?view=netframework-4.7.2 Comment More infoAdvertise with us Next Article C# | How to get all elements of a List that match the conditions specified by the predicate K Kirti_Mangal Follow Improve Article Tags : C# CSharp-method CSharp-Generic-List CSharp-Collections-Namespace CSharp-Generic-Namespace +1 More Similar Reads C# | Remove all elements of a List that match the conditions defined by the predicate List<T>.RemoveAll(Predicate<T>) Method is used to remove all the elements that match the conditions defined by the specified predicate. Properties of List: It is different from the arrays. A list can be resized dynamically but arrays cannot. List class can accept null as a valid value fo 3 min read C# | First occurrence in the List that matches the specified conditions List<T>.Find(Predicate<T>) Method is used to search for an element which matches the conditions defined by the specified predicate and it returns the first occurrence of that element within the entire List<T>. Properties of List: It is different from the arrays. A list can be resiz 3 min read C# | Check if every List element matches the predicate conditions List<T>.TrueForAll(Predicate<T>) is used to check whether every element in the List<T> matches the conditions defined by the specified predicate or not. Syntax: public bool TrueForAll (Predicate<T> match); Parameter: match: It is the Predicate<T> delegate which defines 2 min read C# | Remove elements from a HashSet with conditions defined by the predicate A HashSet is an unordered collection of the unique elements. It comes under System.Collections.Generic namespace. It is used in a situation where we want to prevent duplicates from being inserted in the collection. As far as performance is concerned, it is better in comparison to the list. HashSet 3 min read C# Program to Demonstrate the Use of the Method as a Condition in the LINQ LINQ is known as Language Integrated Query and it is introduced in .NET 3.5. It gives the ability to .NET languages to generate queries to retrieve data from the data source. It removes the mismatch between programming languages and databases and the syntax used to create a query is the same no matt 2 min read Like