LINQ(リンク)でリストから指定数の要素を取得するにはTake関数を使います。
よく一緒に使われるSkip関数も紹介します。
Take関数
先頭から指定数の要素を取得します。
要素数以上の数を指定した場合もエラーは出ず、すべての要素が取得されます。
var list = new List<int> { 0, 1, 2, 3, 4, 5 }
list.Take(3); //[0,1,2]
list.Take(10); //[0,1,2,3,4,5]
Skip関数
先頭から指定数の要素を飛ばし、それ以降の要素を取得します。
要素数以上の数を指定した場合もエラーは出ず、空のリストが帰ってきます。
var list = new List<int> { 0, 1, 2, 3, 4, 5 }
list.Skip(3); //[3,4,5]
list.Skip(10); //[]
TakeとSkipを組み合わせて任意の範囲の要素を取得
TakeとSkipを組み合わせることで、先頭から○番目から△番目までの要素を取得することができます。
var list = new List<int> { 0, 1, 2, 3, 4, 5 }
list.Skip(2).Take(2); //[2,3]
コメント