隨筆 - 4  文章 - 10  trackbacks - 0
          <2025年7月>
          293012345
          6789101112
          13141516171819
          20212223242526
          272829303112
          3456789

          常用鏈接

          留言簿(1)

          隨筆檔案

          文章分類

          文章檔案

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          看看以下代碼:
          將26個英文字母重復(fù)加了5000次,

          String tempstr = "abcdefghijklmnopqrstuvwxyz";
          int times = 5000;
          long lstart1=System.currentTimeMillis();
            String str ="";
            for(int i=0;i<times;i++)
            {
             str+=tempstr;
            }
            
            long lend1=System.currentTimeMillis();
            long time = (lend1-lstart1);
            System.out.println(time);

          可惜我的計算機不是超級計算機,得到的結(jié)果每次不一定一樣一般為 154735 左右。
          也就是154秒。
          我們再看看以下代碼

          String tempstr = "abcdefghijklmnopqrstuvwxyz";
           
            int times = 5000;
          long lstart2=System.currentTimeMillis();
            StringBuffer sb =new  StringBuffer();
            for(int i=0;i<times;i++)
            {
             sb.append(tempstr);
             
            }
            long lend2=System.currentTimeMillis();
            long time2 = (lend2-lstart2);
            System.out.println(time2);
           得到的結(jié)果為 16 有時還是 0
          所以結(jié)論很明顯,StringBuffer 的速度幾乎是String 上萬倍。當然這個數(shù)據(jù)不是很準確。因為循環(huán)的次數(shù)在100000次的時候,差異更大。不信你試試。
          下一次我將解釋為什么StringBuffer 的效率比String 高這么多。
          posted on 2007-08-16 15:43 冬天出走的豬 閱讀(165) 評論(0)  編輯  收藏 所屬分類: j2se
          主站蜘蛛池模板: 双鸭山市| 丰原市| 芜湖市| 永丰县| 榆社县| 锡林郭勒盟| 民乐县| 白城市| 临朐县| 泉州市| 科尔| 星座| 论坛| 内丘县| 黄骅市| 农安县| 民丰县| 渝北区| 邹平县| 宣化县| 沈阳市| 阳泉市| 南江县| 乌兰浩特市| 衡水市| 瑞金市| 循化| 赤壁市| 时尚| 上饶县| 福泉市| 垣曲县| 宁津县| 天峨县| 贺兰县| 抚松县| 应城市| 城口县| 永胜县| 嘉鱼县| 永新县|