using System.Collections.Generic;
public static class MyFunctions {
public static void ForEvery(this List<int> source, Action<int> action){
foreach(int item in source){
public static void ForEveryGeneric<TSource>(this List<TSource> source, Action<TSource> action){
foreach(TSource item in source){
public static void Main()
List<int> numbers = new List<int>() {10, 30, 23, 59, 60};
Console.WriteLine("-----Using built in ForEach method.-------");
numbers.Where((number) => number % 10 == 0).ToList().ForEach((number) => {
Console.WriteLine(name + " " + number);
Console.WriteLine("-----Using explicit foreach keyword.-------");
foreach (int number in numbers.Where((number) => number % 10 == 0)) {
Console.WriteLine(name + " " + number);
Console.WriteLine("-----Using our ForEvery method.-------");
numbers.ForEvery((number) => Console.WriteLine(name + " " + number));