ホームページ >バックエンド開発 >C++ >LINQ はどのようにして文字列を効率的に連結できるのでしょうか?

LINQ はどのようにして文字列を効率的に連結できるのでしょうか?

Barbara Streisand
Barbara Streisandオリジナル
2025-01-04 05:53:40600ブラウズ

How Can LINQ Efficiently Concatenate Strings?

文字列を連結するための LINQ

古いコードでは、ループ内で StringBuilder を使用して文字列が連結されることがよくありました。このメソッドは機能しますが、非効率的で冗長になる可能性があります。

LINQ は、集計クエリを通じて、より簡潔で効率的な代替手段を提供します。 LINQ を使用して文字列を連結するには、次の手順に従います。

集計クエリ

集計クエリは、値のコレクションを 1 つのスカラー値に減らすために使用されます。この場合、文字列は 1 つの連結された文字列に縮小されます。

string[] words = { "one", "two", "three" };
var result = words.Aggregate(
    "", // Start with an empty string to handle empty lists.
    (current, next) => current + ", " + next);

Breakdown

  • Aggregate: 初期値と集計関数を指定してクエリを開始します。
  • (現在、次) => ...: 各文字列を区切り文字と結合して現在の文字列にする集計関数を定義します。
  • current ", " next: 区切り文字と次の文字列を現在の文字列に連結します。

結果

このクエリを実行します出力:

one, two, three

StringBuilder を使用する代替方法

集計クエリは汎用性の高い LINQ 機能ですが、String.Join は多数の文字列を連結するためのよりパフォーマンスの高いオプションを提供します:

string result = String.Join(", ", words);

以上がLINQ はどのようにして文字列を効率的に連結できるのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。