Enumerable.GroupBy メソッドで偶数と奇数に分ける
Enumerable.GroupBy メソッドで、数列を偶数と奇数に分けます。
クエリ式と、メソッド呼び出し構文の 2 通りの方法でプログラムを書いてみました。クエリ式いいですね。
using System; using System.Collections.Generic; using System.Linq; class Program { static void Main() { var xs = from i in Enumerable.Range(0, 10) group i by i % 2 == 0; foreach (var x in xs) { Console.WriteLine("{0} {1}", x.Key, string.Join(",", x)); } Console.WriteLine("-----"); var ys = Enumerable.Range(0, 10).GroupBy(e => e % 2 == 0, e => e); foreach (var y in ys) { Console.WriteLine("{0} {1}", y.Key, string.Join(",", y)); } } }
実行結果です。
True 0,2,4,6,8 False 1,3,5,7,9 ----- True 0,2,4,6,8 False 1,3,5,7,9