使用StringBuilder重复字符串
本文关键字:字符串 StringBuilder 使用 | 更新日期: 2023-09-27 18:06:12
我想重复.-
40次,并使用StringBuilder
将其保存到string
为什么不工作?
string result = new StringBuilder("").Append(".-",0,40).ToString();
我知道其他解决方案,但我想使用StringBuilder
这个方法并不像你想象的那样。2个int形参指定要追加的子字符串的起始索引和长度。
StringBuilder
确实有一个你想要的方法:它被称为Insert
:
sb.Insert(0, ".-", 40);
StringBuilder sb = new StringBuilder();
for (int i = 0; i < 40; i++)
{
sb.Append(".-");
}
MessageBox.Show(sb.ToString());
如果你想多次重复一个字符串,你的选择是:
1-使用循环(正如@Balagurunathan的回答所指出的)
2-对于单个字符,可以使用:
string result = new string('a', 10); //aaaaaaaaaa
对于多于一个字符的字符串:
string result = string.Join("", Enumerable.Repeat(".-", 5)) //.-.-.-.-.-
所以我相信你想做的事情是这样的:
string result = new StringBuilder().Append(string.Join("", Enumerable.Repeat(".-", 40))).ToString();
然而,从性能的角度来看,我还是会坚持使用for循环