谷老师 谷老师
赖老师 赖老师
胡老师 胡老师
>>导读说明

在线学习:北大青鸟多模式教学之一。帮助学员“学习前沿技术”、“培养自学习惯”、“提升学习能力”。供广大IT学子借鉴参考

技术交流:北大青鸟联合校区教员和学员共同交流“前沿技术、主流技术”

学员作品:北大青鸟宁波海曙校区“学员自行完成的工程项目”展示。供广大IT学子借鉴参考和自查不足

学习心得:北大青鸟宁波海曙校区“学员学习心得”展示。供广大IT学子借鉴参考

学员活动:北大青鸟宁波海曙校区“学员学习活动”、“学员业余活动”、“学员就业活动”

>> 学员天地 :导航栏
首页 >> 在线学习 >>C#中一个字符串重复N倍的方法
C#中一个字符串重复N倍的方法

  C#中一个字符串重复N倍的方法

突然要用到把一个String重复N遍不是循环的方法,结果居然没有。

CSDN上找了下,人家也说没有,方法找到很多,看到一个效率最高的。贴出来给大家评评为什么效率最高
public static string RepeatString(string str, int n)

{

char[] arr = str.ToCharArray();

char[] arrDest = new char[arr.Length * n];

for (int i = 0; i < n; i++)

{

Buffer.BlockCopy(arr, 0, arrDest, i * arr.Length * 2, arr.Length * 2);

}

return new string(arrDest);

}

感觉是内存分配上面效率高吧,可能~~:)

把这个方法改成泛型会不会就没效率了呢?

public static string RepeatString(T str, int n)

{

string s = str.ToString();

char[] arr = s.ToCharArray();

char[] arrDest = new char[arr.Length * n];

for (int i = 0; i < n; i++)

{

Buffer.BlockCopy(arr, 0, arrDest, i * arr.Length * 2, arr.Length * 2);

}

return new string(arrDest);

}

}

posted on

参考浏览