是否有内置函数在.net中重复字符串或字符?

Has*_*anG 44 c# vb.net asp.net

c#中是否有一个函数返回给定char或string的x次.或者我必须编码吗?

Kir*_*oll 54

string.Join("", Enumerable.Repeat("ab", 2));
Run Code Online (Sandbox Code Playgroud)

返回

"abab"
Run Code Online (Sandbox Code Playgroud)

string.Join("", Enumerable.Repeat('a', 2))
Run Code Online (Sandbox Code Playgroud)

返回

"aa"
Run Code Online (Sandbox Code Playgroud)

  • 下面稍微更正确的答案 - 使用字符[(1)](http://stackoverflow.com/a/19248082/1037948)的原生'join',或字符串[(2)]的`string.Concat`( http://stackoverflow.com/a/15390834/1037948) (3认同)

Car*_*lin 53

string.Concat(Enumerable.Repeat("ab", 2));
Run Code Online (Sandbox Code Playgroud)

回报

"ABAB"


Sch*_*ini 29

对于字符串,您确实应该使用Kirk的解决方案:

string.Join("", Enumerable.Repeat("ab", 2));
Run Code Online (Sandbox Code Playgroud)

但是对于字符,您可以使用内置(更高效)的字符串构造函数:

new string('a', 2); // returns aa
Run Code Online (Sandbox Code Playgroud)


小智 7

最好的解决方案是内置的字符串函数:

 Strings.StrDup(2, "a")
Run Code Online (Sandbox Code Playgroud)