LINQ C# Tutorial

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);
    }
}