Find Even or Odd numbers in given list

//with given following methods
public static bool IsitOdd(int i)
{
return ((i & 1) == 1);
}
public static bool IsitEven(int i)
{
return ((i & 1) != 1);
}


//here is the code.
int[] numbers = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20 };

var oddNums = from n in numbers where (IsitOdd(n)) select n;
var evenNums = from n in numbers where (IsitEven(n)) select n;
// Other Syntax
int[] oddNums2 =numbers
.Select(n => n )
.Where(P => IsitOdd(P)).ToArray();
int[] evenNums2 = numbers
.Select(n => n)
.Where(P => IsitEven(P)).ToArray();


Given a class like below..
public class NumbersFilters
{
public delegate bool AnyFilter(int i);

public static int[] GetFilteredInts(int[] ints, AnyFilter filter)
{
ArrayList aList = new ArrayList();
foreach (int i in ints)
{
if (filter(i))
{
aList.Add(i);
}
}
return ((int[])aList.ToArray(typeof(int)));
}
}



//we have three choices of usage
// using named method
int[] evenNums1 = NumbersFilters.GetFilteredInts(numbers, IsitEven);
// using anonymous method
int[] evenNums2 = NumbersFilters.GetFilteredInts(numbers, delegate(int i) { return ((i & 1) != 1); });
// using lambda expression
int[] evenNums3 = NumbersFilters.GetFilteredInts(numbers, i => ((i & 1) != 1));
----------------------------------------
//Numbers Less than 10
IEnumerable<int> numsLessThanTen = numbers.Select(i => i)
.Where(i => i < 10)
.OrderBy(i => i);
IEnumerable<int> numsLessThanTen2 = from n in numbers
where (n < 10)
select n;