我确实检查了其他问题; 这个问题的重点是以最有效的方式解决这个特定的问题。
有时候,您希望创建一个具有指定长度的新字符串,并在整个字符串中填充一个默认字符。
也就是说,如果你可以使用 new String(10, '*')并从中创建一个新的 String,它的长度为10个字符,所有字符都有一个 * ,那就太酷了。
因为这样的构造函数不存在,而且您不能从 String 进行扩展,所以您必须创建一个包装器类或者一个方法来完成这项工作。
此时此刻,我正在使用这个:
protected String getStringWithLengthAndFilledWithCharacter(int length, char charToFill) {
char[] array = new char[length];
int pos = 0;
while (pos < length) {
array[pos] = charToFill;
pos++;
}
return new String(array);
}
它仍然缺少任何检查(例如,当长度为0时,它将不工作)。我首先构建数组,因为我相信它比使用字符串连接或使用 StringBuffer 更快。
还有人有更好的解决办法吗?
 
                                
                             
                                
                             
                                
                             
                                
                             
                                
                             
                                
                             
                                
                             
                                
                             
                                
                             
                                
                             
                                
                             
                                
                             
                                
                             
                                
                             
                                
                            