for WPF developers
Home Profile Tips 全記事一覧

ToArray 拡張メソッドでシーケンスから配列を生成する

(2017/03/14 11:04:50 created.)

ToArray 拡張メソッドはシーケンスから配列を生成します。配列にすることでシーケンスが実体化するため、この時点で遅延評価されなくなります。遅延評価については「3.1.54 遅延評価について」を参照してください。List<T> クラスの機能が必要となる場合は List<T> クラスを生成する ToList 拡張メソッドを使いましょう。

サンプルコードを以下に掲載します。

Program.cs
  1. namespace Tips_Linq
  2. {
  3.     using System;
  4.     using System.Linq;
  5.  
  6.     class Program
  7.     {
  8.         static void Main(string[] args)
  9.         {
  10.             var numbers = Enumerable.Range(1, 4);
  11.             Console.WriteLine(numbers.GetType().FullName);
  12.  
  13.             var numbers2 = numbers.ToArray();
  14.             Console.WriteLine(numbers2.GetType().FullName);
  15.  
  16.             Console.ReadKey();
  17.         }
  18.     }
  19. }