IEnumerable への項目の追加
多くの開発者は、要素を IEnumerable
たとえば、次のメソッドを考えてみましょう。
IEnumerable<string> ReadLines() { string s; do { s = Console.ReadLine(); yield return s; } while (!string.IsNullOrEmpty(s)); }
このメソッドは、コンソールから行を読み取ることによって IEnumerable を生成します。結果のコレクションに対して Add("foo") を呼び出そうとすると、この IEnumerable 実装ではサポートされていないため、例外が発生します。
代わりに、Enumerable.Concat メソッドを使用して、新しい項目を IEnumerable に追加できます。上記の例では、次のように、コンソールからの行と新しい項目「foo」の両方を含む新しい IEnumerable を作成できます。
items = items.Concat(new[] { "foo" });
このアプローチでは、両方の行の項目を含む新しい IEnumerable が作成されます。元の IEnumerable と新しい項目。元のコレクションは変更されないことに注意してください。
以上がIEnumerable に項目を追加するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。