C# | How to perform a specified action on each element of the List

01 Feb, 2019
List<T>.ForEach(Action<T>) Method is used to perform a specified action on each element of the List<T>.
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 void ForEach (Action action);

Parameter:
action: It is the Action<T> delegate to perform on each element of the List<T>.
Exceptions:
ArgumentNullException: If the action is null.
InvalidOperationException: If an element in the collection has been modified.
Below programs illustrate the use List<T>.ForEach(Action<T>) Method:
Example 1:
// C# Program to perform a specified// action on each element of the List<T>using System;using System.Collections;using System.Collections.Generic;  class Geeks {      // display method    static void display(string str)    {        Console.WriteLine(str);    }      // Main Method    public static void Main(String[] args)    {          // Creating an List<T> of strings        List<String> firstlist = new List<String>();          // Adding elements to List        firstlist.Add("Geeks");        firstlist.Add("For");        firstlist.Add("Geeks");        firstlist.Add("GFG");        firstlist.Add("C#");        firstlist.Add("Tutorials");        firstlist.Add("GeeksforGeeks");          // using ForEach Method        // which calls display method        // on each element of the List        firstlist.ForEach(display);    }}
Output:
Geeks
For
Geeks
GFG
C#
Tutorials
GeeksforGeeks

Example 2:
// C# Program to perform a specified// action on each element of the List<T>using System;using System.Collections;using System.Collections.Generic;  class Geeks {      // display method    static void display(int str)    {                  str = str + 5;        Console.WriteLine(str);    }      // 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(1);        firstlist.Add(2);        firstlist.Add(3);        firstlist.Add(4);        firstlist.Add(5);        firstlist.Add(6);        firstlist.Add(7);          // using ForEach Method        // which calls display method        // on each element of the List        firstlist.ForEach(display);    }}
Output:
6
7
8
9
10
11
12

Reference:
https://docs.microsoft.com/en-us/dotnet/api/system.collections.generic.list-1.foreach?view=netframework-4.7.2
CSharp-Collections-Namespace
CSharp-Generic-List
CSharp-Generic-Namespace
CSharp-method
C#
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Introduction to .NET Framework
C# | Multiple inheritance using interfaces
Differences Between .NET Core and .NET Framework
C# | Constructors
C# | String.IndexOf( ) Method | Set - 1
C# | Class and Object
Difference between Ref and Out keywords in C#
C# | Arrays
C# | Encapsulation
C# | Replace() Method