Selectメソッド
LINQで一番利用されている(と思う)Selectメソッドです。コレクションの全要素に対して処理が行われます。
例えば、適当な数値のコレクション全要素に対して3を掛けるような処理を考えてみましょう。
int[] values = { 1, 9, 5, 6, 8, 6, 2, 5, 3 }; //従来の方法 int[] res1 = new int[values.Length]; for (int i = 0; i < values.Length; ++i) { res1[i] = values[i] * 3; } //LINQ int[] res2 = values.Select(x => x * 3).ToArray();
Dim values As Integer() = {1, 9, 5, 6, 8, 6, 2, 5, 3} '従来の方法 Dim res1(values.Length) As Integer For i As Integer = 0 To values.Length - 1 res1(i) = values(i) * 3 Next 'LINQ Dim res2() As Integer = values.Select(Function(x) x * 3).ToArray()
このようにLINQの最大の特徴は、for文やforeach文といった繰り返し処理が無くなることです。これによって無駄に長いコードや不要な変数宣言が無くなります。