我在寻找一个简单的方法,公共或操作员,让我再重复一些字符串ñ倍。我知道我可以使用for循环编写此代码,但是我希望在必要时避免for循环,并且应该在某个地方存在一个简单的直接方法。
String str = "abc";
String repeated = str.repeat(3);
repeated.equals("abcabcabc");
相关:
重复字符串javascript 通过重复给定次数另一个字符串来创建NSString
已编辑
当它们不是完全必要时,我尝试避免for循环,因为:
即使将它们隐藏在另一个函数中,它们也会增加代码行数。
读取我的代码的人必须弄清楚我在for循环中正在做什么。即使它被注释并且具有有意义的变量名称,他们仍然必须确保它没有做任何“聪明的事情”。
程序员喜欢将聪明的东西放入for循环中,即使我将其写为“仅按计划执行”,也不排除有人来添加额外的聪明的“修复”。
它们通常很容易出错。对于涉及索引的循环,往往会产生一个错误。
For循环通常会重用相同的变量,从而增加了很难发现作用域错误的机会。
对于循环,增加了寻找漏洞猎人的位置。
String::repeat
". ".repeat( 7 ) // Seven period-with-space pairs: . . . . . . .
Java 11中的新功能是String::repeat完全符合您要求的方法:
String str = "abc";
String repeated = str.repeat(3);
repeated.equals("abcabcabc");
它的Javadoc说:
/**
* Returns a string whose value is the concatenation of this
* string repeated {@code count} times.
* <p>
* If this string is empty or count is zero then the empty
* string is returned.
*
* @param count number of times to repeat
*
* @return A string composed of this string repeated
* {@code count} times or the empty string if this
* string is empty or count is zero
*
* @throws IllegalArgumentException if the {@code count} is
* negative.
*
* @since 11
*/
字符串userKeyword来自用户键盘输入-我已经尝试编写一个方法来返回这个删除重复字符的字符串。 通过在while循环中移动新字符赋值,我现在得到的输出与PLAIN_ALPHA相同,而不是userKeyword,并省略了重复项。我做错了什么?
我对编码非常陌生,刚刚接触过静态方法,所以我为这些愚蠢的错误提前道歉。在main下调用该方法时,该方法应该显示一个三角形,但我得到的控制台是空的,没有输出。但是,如果我将此写在main下: 然后,三角形将显示在控制台中,但是对于这个赋值,字符串/三角形必须仅通过使用来调用
问题内容: 给定一个字符c和一个数字n,我如何创建一个包含n个重复c的字符串?手动执行此操作太麻烦了: 当然,已经有一些静态库函数为我完成了这项工作? 问题答案:
问题内容: 我想改变这句话: 等等。 至 : 等等。 有没有像我在Objective-C中那样在Java中执行此操作的简便方法? 问题答案: 最后,我通过使用类解决了它。
如何从字符串生成有效的UUID?字符串本身不是我要找的。相反,我正在寻找类似于将任何字符串转换为有效 UUID 的哈希函数。