2015年2月19日 星期四

[Java] String v.s StringBuilder 動態串接字串效能差異

之前寫過一篇[C#] string 串接  P.K  StringBuilder  就想來試試看Java上字串動態患接會怎樣,

實際用程式跑看看,程式碼如下:

 
package test;



public class Test {



    public static void main(String[] args) {

      

        double start=System.currentTimeMillis();

        String str="";

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

        {

            str+= String.valueOf(i);

        }

        double end=System.currentTimeMillis();

       

        System.out.println((end-start)+"ms");

        start=System.currentTimeMillis();

        StringBuilder sb=new StringBuilder();

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

        {

            sb.append(String.valueOf(i));

        }  

        end=System.currentTimeMillis();

        System.out.println((end-start)+"ms");       

    }   

}














看起來依然是StringBuilder 海放String。 相差268倍。

沒有留言:

張貼留言