C# | Array.FindAll() Method (original) (raw)
Last Updated : 03 Feb, 2023
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: