C# 返回重复多次的字符串

C# 返回重复多次的字符串,c#,C#,我想在一个基于项目深度的字符串前面插入一个*的数字,我想知道是否有方法返回一个重复Y次的字符串。例如: string indent = "***"; Console.WriteLine(indent.Redraw(0)); //would print nothing. Console.WriteLine(indent.Redraw(1)); //would print "***". Console.WriteLine(indent.Redraw(2)); //would print "*****

我想在一个基于项目深度的字符串前面插入一个*的数字,我想知道是否有方法返回一个重复Y次的字符串。例如:

string indent = "***";
Console.WriteLine(indent.Redraw(0)); //would print nothing.
Console.WriteLine(indent.Redraw(1)); //would print "***".
Console.WriteLine(indent.Redraw(2)); //would print "******".
Console.WriteLine(indent.Redraw(3)); //would print "*********".

是的,您正在寻找
PadLeft()
或者,在您的情况下,甚至
PadLeft()
都可以:

string indent = "".PadLeft(20, '*'); //repeat * 20 times
您可以使用:

如果确实要将字符串重复n次:

string indent = "***";
string result = String.Concat(Enumerable.Repeat(indent, 3)); // 9 *

它将一个字符复制N次,而不是一个字符串。@DStanley:为了完整性,你说得对。但在副本中已经提到
string indent = "***";
string result = String.Concat(Enumerable.Repeat(indent, 3)); // 9 *