.net 别让字符串加法浪费CPU了

对比用的代码 sql

    主要是直接使用string的+ 和用内置字符串合并方法的比较 c#

Random rand=new Random();
            byte[] a = new byte[10000];
            for (int i = 0; i < a.Length; ++i) a[i] = (byte)rand.Next(256);

            DateTime now1 = DateTime.Now;
            string s1 = "";
            for (int i = 0; i < a.Length; ++i)
                s1 += Convert.ToString(a[i], 16)+" ";
            DateTime end1 = DateTime.Now;

            DateTime now2 = DateTime.Now;
            List<string> s2=new List<string>();
            for (int i = 0; i < a.Length; ++i)
                s2.Add(Convert.ToString(a[i], 16));
            string s3 = string.Join(" ", s2.ToArray());
            DateTime end2 = DateTime.Now;


            MessageBox.Show((end1 - now1).TotalMilliseconds.ToString() + " : " + "\n" + (end2 - now2).TotalMilliseconds.ToString() + " : " + "\n");



打印结果 dom

 

55.0031
1.0001

 结果是:内置方法完胜字符串加法,合并次数越多越明显。 code

相关文章
相关标签/搜索