我正在寻找一个简单的通用方法或运算符,它允许我重复某些字符串n次。我知道我可以使用 for 循环来编写此代码,但我希望在必要时避免使用 for 循环,并且应该在某个地方存在一个简单的直接方法。
String str = "abc";
String repeated = str.repeat(3);
repeated.equals("abcabcabc");
相关:
repeat string javascript Create NSString by repeating another string a given number of times
已编辑
当 for 循环不是完全必要时,我会尽量避免使用它们,因为:
即使它们隐藏在另一个函数中,它们也会增加代码行数。
阅读我的代码的人必须弄清楚我在 for 循环中做了什么。即使它被注释并且具有有意义的变量名称,他们仍然必须确保它没有做任何“聪明”的事情。
程序员喜欢在 for 循环中放入聪明的东西,即使我将其编写为“只做它打算做的事情”,这并不妨碍有人加入并添加一些额外的聪明的“修复”。
它们通常很容易出错。涉及索引的 for 循环往往会因一个错误而产生。
For 循环经常重用相同的变量,从而增加了很难发现作用域错误的机会。
For 循环增加了 bug 猎人必须查找的位置的数量。
最佳答案
这是最短的版本(需要 Java 1.5+):
repeated = new String(new char[n]).replace("\0", s);
其中,n
是要重复字符串的次数,s
是要重复的字符串。
无需导入或库。
关于java - 重复字符串的简单方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49868057/