使用StringBuilder重复一个字符串

时间:2016-09-07 12:17:34

标签: c# string stringbuilder

我想重复.-次40次并使用string将其保存到StringBuilder

为什么这不起作用?

string result = new StringBuilder("").Append(".-",0,40).ToString();

我了解other解决方案,但我想使用StringBuilder

3 个答案:

答案 0 :(得分:6)

该方法不符合您的想法。 2个int参数指定要追加的子字符串的起始索引和长度。

StringBuilder确实有你想要的方法:它被称为Insert

sb.Insert(0, ".-", 40);

答案 1 :(得分:1)

StringBuilder sb = new StringBuilder();
for (int i = 0; i < 40; i++)
{
     sb.Append(".-");
}
MessageBox.Show(sb.ToString());

答案 2 :(得分:0)

如果你想多次重复一个字符串,你的选择是:

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 循环的性能