C# | Array.FindAll() Method
This method is used to retrieve all the elements that match the conditions defined by the specified predicate.
Syntax:
public static T[] FindAll (T[] array, Predicate match);
Here, T is the type of element of the array.
Parameters:
array: It is the one-dimensional, zero-based array to search.
match: It is the predicate that defines the conditions of the element to search for.
Return Value: This method return an array containing all elements that matches the conditions defined by the specified predicate if it is found. Otherwise, it returns an empty array.
Exception: This method throws ArgumentNullException if the array is null or match is null.
Below programs illustrate the use of Array.FindAll(T[], Predicate) Method:
Example 1:
CSharp
// C# program to demonstrate // FindAll() method using System; using System.Collections.Generic; public class GFG { // Main Method public static void Main() { try { // Creating and initializing new the String String[] myArr = { "Sun" , "Mon" , "Tue" , "Sat" }; // Display the values of the myArr. Console.WriteLine( "Initial Array:" ); // calling the PrintIndexAndValues() // method to print PrintIndexAndValues(myArr); // getting a element a with required // condition using method FindAll() String[] value = Array.FindAll(myArr, element => element.StartsWith( "S" , StringComparison.Ordinal)); // Display the value // of the found element. Console.WriteLine( "Elements are: " ); // printing the Array of String PrintIndexAndValues(value); } catch (ArgumentNullException e) { Console.Write( "Exception Thrown: " ); Console.Write( "{0}" , e.GetType(), e.Message); } } // Defining the method // PrintIndexAndValues public static void PrintIndexAndValues(String[] myArr) { for ( int i = 0; i < myArr.Length; i++) { Console.WriteLine( "{0}" , myArr[i]); } Console.WriteLine(); } } |
Output:
Initial Array: Sun Mon Tue Sat Elements are: Sun Sat
Example 2:
CSharp
// C# program to demonstrate // FindAll() method // For ArgumentNullException using System; using System.Collections.Generic; public class GFG { // Main Method public static void Main() { try { // Creating and initializing // new the String String[] myArr = null ; // getting a element a with // required condition using // method FindAll() Console.WriteLine( "Trying to get the element from a null array" ); Console.WriteLine(); String[] value = Array.FindAll(myArr, element => element.StartsWith( "S" , StringComparison.Ordinal)); // Display the value of the found element. Console.WriteLine( "Elements are: " ); // printing the Array of String PrintIndexAndValues(value); } catch (ArgumentNullException e) { Console.Write( "Exception Thrown: " ); Console.Write( "{0}" , e.GetType(), e.Message); } } // Defining the method // PrintIndexAndValues public static void PrintIndexAndValues(String[] myArr) { for ( int i = 0; i < myArr.Length; i++) { Console.WriteLine( "{0}" , myArr[i]); } Console.WriteLine(); } } |
Output:
Trying to get the element from a null array Exception Thrown: System.ArgumentNullException
Reference:
Please Login to comment...