はじめに
C#で文字列を繰り返して結合する方法は、さまざまな場面で使います。
例えば、特定のパターンを生成したり、テンプレート文字列を構築したりする際に役に立ちます。
本記事では、単一の文字や複数の文字列を繰り返す方法について、サンプルコードを使って解説します。
1つの文字を繰り返す方法
まず、単一の文字を指定回数繰り返す簡単な方法から見ていきましょう。C#では、new String
コンストラクタを使うことで、特定の文字を指定回数繰り返した文字列を簡単に生成できます。
コード例
public string RepeatString(string input, int count)
{
if (count < 0)
{
throw new ArgumentException("Count cannot be negative.");
}
return new String(input[0], count);
}
コード解説
input[0]
:input
の最初の文字を取得します。このコードでは、input
が1文字の文字列であることを前提としています。複数の文字列を渡すと、その最初の文字だけが繰り返されます。new String
:String
クラスのコンストラクタを使って、指定した文字を指定回数繰り返して文字列を生成します。count
:繰り返したい回数を指定します。count
が負の値の場合は、例外がスローされます。
使用例
例えば、RepeatString("A", 5)
を呼び出すと、"AAAAA"
という結果が返ってきます。この方法はシンプルで、単一の文字を繰り返す場合に最適です。
複数の文字列を繰り返す方法
次に、複数の文字列を繰り返す方法について説明します。StringBuilder
クラスを使用することで、複数の文字列を効率的に繰り返すことができます。
コード例
public string RepeatString(string input, int count)
{
if (count < 0)
{
throw new ArgumentException("Count cannot be negative.");
}
StringBuilder result = new StringBuilder(input.Length * count);
for (int i = 0; i < count; i++)
{
result.Append(input);
}
return result.ToString();
}
コード解説
StringBuilder
:繰り返し文字列を効率的に構築するために使用されるクラスです。input.Length * count
の容量を事前に確保することで、パフォーマンスの最適化を図っています。Append(input)
:input
文字列をStringBuilder
に追加します。これが指定された回数(count
)だけ繰り返されます。result.ToString()
:最終的に構築された文字列を返します。
使用例
例えば、RepeatString("ABC", 3)
を呼び出すと、"ABCABCABC"
という結果が得られます。この方法は、複数の文字列を繰り返す場合に非常に便利です。
まとめ
C#で文字列を繰り返して生成する方法は、シンプルなものから複数の文字列を扱うものまでさまざまです。単一の文字を繰り返すにはnew String
コンストラクタを、複数の文字列を繰り返すにはStringBuilder
を活用することで、効率的に文字列を生成できます。これらのテクニックを活用して、日常のプログラミングをより効率的に進めてください。
0 件のコメント:
コメントを投稿