3 回答
TA贡献1790条经验 获得超9个赞
如果您使用的是.NET 4.0,则可以string.Concat与一起使用Enumerable.Repeat。
int N = 5; // or whatever
Console.WriteLine(string.Concat(Enumerable.Repeat(indent, N)));
否则,我会接受亚当的回答。
我通常不建议使用Andrey的答案的原因仅仅是,该ToArray()调用会引入多余的开销,StringBuilder而Adam提出的方法可以避免这种开销。就是说,至少它不需要.NET 4.0就可以工作。而且它既快捷又容易(如果效率不是您所关注的重点,那也不会杀死您)。
TA贡献1862条经验 获得超6个赞
public static class StringExtensions
{
public static string Repeat(this string input, int count)
{
if (!string.IsNullOrEmpty(input))
{
StringBuilder builder = new StringBuilder(input.Length * count);
for(int i = 0; i < count; i++) builder.Append(input);
return builder.ToString();
}
return string.Empty;
}
}
- 3 回答
- 0 关注
- 398 浏览
添加回答
举报