posts - 41,  comments - 40,  trackbacks - 0

          /*******************************************************************************
          ?*
          ?* 比較賦值與System.arraycopy誰快
          ?*
          ?* 復(fù)制的內(nèi)容越多,System.arraycopy優(yōu)勢更明顯
          ?*
          ?* Author: NeedJava
          ?*
          ?* Modified: 2007.09.16
          ?*
          ?******************************************************************************/
          public final class WhoFaster
          {
          ? public static void main( String[] args )
          ? {
          ??? /*/
          ??? int begin=100;

          ??? int length=12;

          ??? String temp="12345678901234567890"
          ?????????????? +"12345678901234567890"
          ?????????????? +"12345678901234567890"
          ?????????????? +"12345678901234567890"
          ?????????????? +"12345678901234567890"
          ?????????????? +"黑客帝國忍者神龜變形金剛"
          ?????????????? +"12345678901234567890"
          ?????????????? +"12345678901234567890"
          ?????????????? +"12345678901234567890"
          ?????????????? +"12345678901234567890"
          ?????????????? +"12345678901234567890";

          ??? int times=10000000;? //千萬
          ??? /*/
          ??? int begin=100;

          ??? int length=120;

          ??? String temp="12345678901234567890"
          ?????????????? +"12345678901234567890"
          ?????????????? +"12345678901234567890"
          ?????????????? +"12345678901234567890"
          ?????????????? +"12345678901234567890"
          ?????????????? +"黑客帝國忍者神龜變形金剛"
          ?????????????? +"黑客帝國忍者神龜變形金剛"
          ?????????????? +"黑客帝國忍者神龜變形金剛"
          ?????????????? +"黑客帝國忍者神龜變形金剛"
          ?????????????? +"黑客帝國忍者神龜變形金剛"
          ?????????????? +"黑客帝國忍者神龜變形金剛"
          ?????????????? +"黑客帝國忍者神龜變形金剛"
          ?????????????? +"黑客帝國忍者神龜變形金剛"
          ?????????????? +"黑客帝國忍者神龜變形金剛"
          ?????????????? +"黑客帝國忍者神龜變形金剛"
          ?????????????? +"12345678901234567890"
          ?????????????? +"12345678901234567890"
          ?????????????? +"12345678901234567890"
          ?????????????? +"12345678901234567890"
          ?????????????? +"12345678901234567890";

          ??? int times=1000000;? //百萬
          ??? //*/

          ??? char[] oldArray=temp.toCharArray();

          ??? char[] newArray=null;

          ??? long start=0L;


          ??? ////////////////////////////////////////////////////////////////////////////
          ??? //
          ??? // 單純賦值
          ??? //
          ??? ////////////////////////////////////////////////////////////////////////////
          ??? newArray=new char[length];

          ??? start=System.currentTimeMillis();

          ??? for( int i=0; i<times; i++ )
          ?????? {
          ???????? for( int j=0; j<length; j++ )
          ??????????? {
          ????????????? newArray[j]=oldArray[begin+j];
          ??????????? }
          ?????? }

          ??? System.out.println( new String( newArray )+" "+( System.currentTimeMillis()-start ) );


          ??? ////////////////////////////////////////////////////////////////////////////
          ??? //
          ??? // System.arraycopy
          ??? //
          ??? ////////////////////////////////////////////////////////////////////////////
          ??? newArray=new char[length];

          ??? start=System.currentTimeMillis();

          ??? for( int i=0; i<times; i++ )
          ?????? {
          ???????? System.arraycopy( oldArray, begin, newArray, 0, length );
          ?????? }

          ??? System.out.println( new String( newArray )+" "+( System.currentTimeMillis()-start ) );
          ? }
          }

          posted on 2007-09-16 13:42 NeedJava 閱讀(5097) 評論(8)  編輯  收藏 所屬分類: Java
          主站蜘蛛池模板: 夏河县| 枣强县| 柏乡县| 静乐县| 邵东县| 东方市| 中宁县| 钦州市| 渭南市| 信丰县| 寿宁县| 固安县| 瓮安县| 宜春市| 得荣县| 滁州市| 峨眉山市| 正安县| 治多县| 博兴县| 会宁县| 栾川县| 洪雅县| 铜鼓县| 乐山市| 滦南县| 吉水县| 东明县| 宜黄县| 宁明县| 长垣县| 百色市| 平原县| 普定县| 成都市| 吴川市| 永丰县| 扎兰屯市| 葵青区| 昌都县| 新安县|