文字列を繰り返す簡単な方法 質問する

文字列を繰り返す簡単な方法 質問する

文字列をn回繰り返すことができる、シンプルな commons メソッドまたは演算子を探しています。 for ループを使用してこれを記述できることはわかっていますが、必要な場合は for ループを避けたいので、どこかにシンプルで直接的なメソッドが存在する必要があります。

String str = "abc";
String repeated = str.repeat(3);

repeated.equals("abcabcabc");

関連:

文字列を繰り返す javascript 別の文字列を指定された回数繰り返して NSString を作成します。

編集済み

以下の理由により、絶対に必要でない場合は for ループを避けるようにしています。

  1. これらは、別の関数に隠されている場合でも、コードの行数が増加します。

  2. 私のコードを読む人は、私が for ループで何をしているのかを理解する必要があります。たとえコメントが付けられていて、意味のある変数名が付けられていたとしても、それが「賢い」ことではないことを確認する必要があります。

  3. プログラマーは for ループに巧妙なことを盛り込むのが大好きです。たとえ私が「意図されたことだけを行う」ように書いたとしても、誰かがやって来て巧妙な「修正」を加える可能性を排除するものではありません。

  4. これらは非常に頻繁に間違えられます。インデックスを含む for ループでは、1 つずれたバグが発生する傾向があります。

  5. for ループでは同じ変数が再利用されることが多く、スコープのバグを見つけるのが非常に困難になる可能性が高くなります。

  6. For ループにより、バグハンターが調べる必要がある場所の数が増えます。

ベストアンサー1

最も短いバージョンは次のとおりです (Java 1.5 以上が必要です)。

repeated = new String(new char[n]).replace("\0", s);

n文字列を繰り返す回数、sは繰り返す文字列です。

インポートやライブラリは必要ありません。

おすすめ記事