LINQ による文字列の連結
文字列を連結する従来の方法では、StringBuilder を使用し、ループ内で各文字列を追加します。ただし、より効率的なアプローチとして、LINQ では集計クエリが提供されています。
集計クエリは、値のコレクションを取得してスカラー値を返す関数です。ドット表記を使用すると、IEnumerable オブジェクトに対して集計クエリを呼び出すことができます。
LINQ で文字列を連結するには、次のように Aggregate メソッドを使用できます。
string[] words = { "one", "two", "three" }; string res = words.Aggregate( "", // Start with an empty string for empty list handling (current, next) => current + ", " + next);
このコードは、次の出力:
, one, two, three
集約クエリが実行されることに注意することが重要です。 すぐに。大規模なシーケンスで最適なパフォーマンスを得るには、代わりに String.Join の使用を検討してください。
また、Aggregate を使用したい場合は、StringBuilder を利用してパフォーマンスを向上させることができます。
var res = words.Aggregate( new StringBuilder(), (current, next) => current.Append(current.Length == 0? "" : ", ").Append(next));
以上がLINQ の集計メソッドを効率的な文字列連結にどのように使用できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。