C#使用string和StringBuilder哪个性能更好

C#使用string和StringBuilder哪个性能更好C#的字符串拼接 , 最常用的就是直接相加 , 俗称字符串拼接 。 可是 , 这种拼接和StringBuilder的拼接到底哪一个机能更好呢?日常平凡该利用哪一种写法呢?
方式/
11)C#中的字符串有个特征 , 一旦初始化之后就不会再更改了 。 日常平凡给string变量赋值一次后 , 再次利用代码可以直接点窜 , 可是 , 素质上是从头建立了一个新的字符串 。 是以 , 点窜几多次就会建立几多个字符串 。
2)StringBuilder则是直接在原字符串上点窜值 。
3)建立一个节制台应用程序 , 在Program类的下方添加一个新的静态类StringHelper , 并在顶部引入System.Text定名空间

C#使用string和StringBuilder哪个性能更好

文章插图

2在StringHelper类中添加一个静态方式UseString , 领受两个参数 , 在方式内部利用字符串拼接 , 最终返回拼接的成果字符串

C#使用string和StringBuilder哪个性能更好

文章插图

3在StringHelper类中添加一个静态方式UseStringBuilder , 领受两个参数 , 在方式内部利用StringBuilder拼接 , 最终返回拼接的成果字符串 。
【C#使用string和StringBuilder哪个性能更好】注重:StringBuilder需要ToString之后转换为字符串

C#使用string和StringBuilder哪个性能更好

文章插图

4在Program.cs文件的顶部添加定名空间引用:using System.Diagnostics; 目标是利用Stopwatch , 用于记实方式挪用的耗时

C#使用string和StringBuilder哪个性能更好

文章插图

5在Main方式中 , 建立一个Stopwatch , 并在挪用UseString方式前开启 , 在挪用完当作后竣事 , 最后输出这个方式的耗时 , 可是为毫秒 。 从成果可以看出 , 字符串拼接5万次 , 耗时8秒 。
注重:因为机械机能和当前忙碌状况纷歧样 , 执行成果的耗时可能有差别

C#使用string和StringBuilder哪个性能更好

文章插图

6在Main方式中挪用UseStringBuilder方式 , 同样的体例记实这个方式挪用的耗时 。 从成果可以看出 , 这个体例同样的拼接5万次字符串 , 耗时才7毫秒

C#使用string和StringBuilder哪个性能更好

文章插图

7利用Stopwatch记实两个方式的挪用 , 并输出成果 。 可以看出 , StringBuilder的耗时比string的耗时快上千倍 。
是以 , 日常平凡若是拼接大量字符串 , 出格是轮回次数良多的时辰 , 利用StringBuilder可以提高机能 。 若是拼接的次数很少 , 两者的机能差距不较着

C#使用string和StringBuilder哪个性能更好

文章插图


以上内容就是C#使用string和StringBuilder哪个性能更好的内容啦 , 希望对你有所帮助哦!

    推荐阅读