Array.ForEach(T[], Action<T>) Method is used to perform the specified action on each element of the specified array.
Syntax:
public static void ForEach<T> (T[] array, Action<T> action);
Parameters:
array: The one-dimensional, zero-based Array on whose elements the action is to be performed.
action: The Action to perform on each element of array.
Exception: This method throws ArgumentNullException array is null or action is null.
Below programs illustrate the use of Array.ForEach(T[], Action) Method:
Example 1:
CSHARP
// C# program to demonstrate // Array.ForEach(T[], Action<T>) // Method using System;
using System.Collections.Generic;
class GFG {
// Main Method
public static void Main()
{
try {
// Creating and initializing
// new Array of int
int [] myArr = { 2, 3, 4, 5 };
// Display the values of the myArr.
Console.Write( "Initial Array: " );
// calling the PrintIndexAndValues()
// method to print
PrintIndexAndValues(myArr);
// set a delegate for
// the SetSquares method
Action< int > action = new Action< int >(SetSquares);
// performing the action
// using ForEach() method
Array.ForEach(myArr, action);
}
catch (ArgumentNullException e) {
Console.Write( "Exception Thrown: " );
Console.Write( "{0}" , e.GetType(), e.Message);
}
}
// Defining the method
// PrintIndexAndValues
public static void PrintIndexAndValues( int [] myArr)
{
for ( int i = 0; i < myArr.Length; i++) {
Console.Write( "{0} " , myArr[i]);
}
Console.WriteLine();
Console.WriteLine();
}
// Defining the method
// ShowSquares
private static void SetSquares( int val)
{
Console.WriteLine( "{0} squared = {1}" ,
val, val * val);
}
} |
Output:
Initial Array: 2 3 4 5 2 squared = 4 3 squared = 9 4 squared = 16 5 squared = 25
Example 2:
CSHARP
// C# program to demonstrate // Array.ForEach(T[], Action<T>) // Method using System;
using System.Collections.Generic;
public class GFG {
// Main Method
public static void Main()
{
try {
// Creating and initializing
// new Array of with null
int [] myArr = null ;
// set a delegate for
// the Set Squares method
Action< int > action = new Action< int >(SetSquares);
// performing the action
// using ForEach() method
Console.WriteLine( "Trying to perform "
+ "action on a null Array" );
Console.WriteLine();
Array.ForEach(myArr, action);
}
catch (ArgumentNullException e) {
Console.Write( "Exception Thrown: " );
Console.Write( "{0}" , e.GetType(), e.Message);
}
}
// Defining the method
// PrintIndexAndValues
public static void PrintIndexAndValues( int [] myArr)
{
for ( int i = 0; i < myArr.Length; i++) {
Console.Write( "{0} " , myArr[i]);
}
Console.WriteLine();
Console.WriteLine();
}
// Defining the method
// ShowSquares
private static void SetSquares( int val)
{
Console.WriteLine( "{0} squared = {1}" , val, val * val);
}
} |
Output:
Trying to perform action on a null Array Exception Thrown: System.ArgumentNullException
Reference: