C# での効率的な文字の繰り返し
C# では、タブ文字 (「t」) のみで構成される文字列を生成するさまざまな方法があります。 。この記事では、一般的に使用される 3 つの方法を検証し、シンプルさとパフォーマンスを兼ね備えた代替ソリューションを提供します。
LINQ と StringBuilder と文字列の連結
LINQ と StringBuilder のアプローチは、簡潔な方法を提供します。そして柔軟なソリューション。 LINQ は、Repeat メソッドと Aggregate メソッドを利用しますが、StringBuilder では増分文字列操作が可能です。ただし、これらの方法はいずれも、単純な文字列連結よりも複雑な操作を必要とします。
private string Tabs(uint numTabs) { IEnumerable<string> tabs = Enumerable.Repeat("\t", (int)numTabs); return (numTabs > 0) ? tabs.Aggregate((sum, next) => sum + next) : ""; } private string Tabs(uint numTabs) { StringBuilder sb = new StringBuilder(); for (uint i = 0; i < numTabs; i++) sb.Append("\t"); return sb.ToString(); }
直接文字列構築
次に示すように、直接文字列連結アプローチは簡単です。 3 つの方法の中で最高のパフォーマンスを提供します。
private string Tabs(uint numTabs) { string output = ""; for (uint i = 0; i < numTabs; i++) { output += '\t'; } return output; }
最適な解決策:コンストラクターベースの文字列作成
最大限のシンプルさとパフォーマンスを実現するには、コンストラクターベースのソリューションの使用を検討してください。
static string Tabs(int n) { return new string('\t', n); }
このメソッドは、指定された文字を繰り返して新しい文字列オブジェクトを直接初期化します。指定された回数だけ実行すると、タブ付き文字列を生成するための最も効率的なソリューションが得られます。
以上がC# でタブの文字列を作成する最も効率的な方法は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。