using System; using System.Collections; public delegate bool IntFilter(int i); public class MainClass { public static int[] FilterArrayOfInts(int[] ints, IntFilter filter) { ArrayList aList = new ArrayList(); foreach (int i in ints) { if (filter(i)) { aList.Add(i); } } return ((int[])aList.ToArray(typeof(int))); } public static void Main() { int[] nums = { 1, 2, 3, 4, 5}; int[] oddNums = FilterArrayOfInts(nums, i => ((i & 1) == 1)); foreach (int i in oddNums) Console.WriteLine(i); } }