最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java字符串拼接效率測試過程解析

 更新時(shí)間:2020年05月14日 11:11:29   作者:玄同太子  
這篇文章主要介紹了Java字符串拼接效率測試過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

測試代碼:

public class StringJoinTest {
  public static void main(String[] args) {
    int count = 10000;
    long begin, end, time;
    begin = System.currentTimeMillis();
    testString(count);
    end = System.currentTimeMillis();
    time = end - begin;
    System.out.println("拼接" + count + "次,String消耗時(shí)間:" + time + "毫秒");

    begin = System.currentTimeMillis();
    testStringBuffer(count);
    end = System.currentTimeMillis();
    time = end - begin;
    System.out.println("拼接" + count + "次,StringBuffer消耗時(shí)間:" + time + "毫秒");

    begin = System.currentTimeMillis();
    testStringBuilder(count);
    end = System.currentTimeMillis();
    time = end - begin;
    System.out.println("拼接" + count + "次,StringBuilder消耗時(shí)間:" + time + "毫秒");
  }

  private static String testStringBuilder(int count) {
    StringBuilder tem = new StringBuilder();
    for (int i = 0; i < count; i++) {
      tem.append("hello world!");
    }
    return tem.toString();
  }

  private static String testStringBuffer(int count) {
    StringBuffer tem = new StringBuffer();
    for (int i = 0; i < count; i++) {
      tem.append("hello world!");
    }
    return tem.toString();
  }

  private static String testString(int count) {
    String tem = "";
    for (int i = 0; i < count; i++) {
      tem += "hello world!";
    }
    return tem;
  }
}

測試結(jié)果:

結(jié)論:

  在少量字符串拼接時(shí)還看不出差別,但隨著數(shù)量的增加,String+拼接效率顯著降低。在達(dá)到100萬次,我本機(jī)電腦已經(jīng)無法執(zhí)行String+拼接了,StringBuilder效率略高于StringBuffer。所以在開發(fā)過程中通常情況下推薦使用StringBuilder。

  StringBuffer和StringBuilder的區(qū)別在于StringBuffer是線程安全的。

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • SpringMVC獲取HTTP中元素的實(shí)現(xiàn)示例

    SpringMVC獲取HTTP中元素的實(shí)現(xiàn)示例

    本文主要介紹了SpringMVC獲取HTTP中的元素,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2025-02-02
  • SpringBoot單元測試之?dāng)?shù)據(jù)隔離詳解

    SpringBoot單元測試之?dāng)?shù)據(jù)隔離詳解

    我們?cè)趯憜卧獪y試時(shí),有一個(gè)比較重要的要求是可以重復(fù)運(yùn)行, 那么這樣就會(huì)有一個(gè)比較麻煩的問題:數(shù)據(jù)污染,所以本文為大家整理了兩個(gè)數(shù)據(jù)隔離的方式,希望對(duì)大家有所幫助
    2023-08-08
  • MyBatis mapping類基本用法

    MyBatis mapping類基本用法

    這篇文章主要為大家介紹了MyBatis mapping類基本用法示例詳解,
    有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-09-09
  • Java使用Callable接口實(shí)現(xiàn)多線程的實(shí)例代碼

    Java使用Callable接口實(shí)現(xiàn)多線程的實(shí)例代碼

    這篇文章主要介紹了Java使用Callable接口實(shí)現(xiàn)多線程的實(shí)例代碼,實(shí)現(xiàn)Callable和實(shí)現(xiàn)Runnable類似,但是功能更強(qiáng)大,具體表現(xiàn)在可以在任務(wù)結(jié)束后提供一個(gè)返回值,Runnable不行,call方法可以拋出異,Runnable的run方法不行,需要的朋友可以參考下
    2023-08-08
  • MyBatis映射文件resultMap元素中使用多個(gè)association的方法

    MyBatis映射文件resultMap元素中使用多個(gè)association的方法

    這篇文章主要介紹了MyBatis映射文件resultMap元素中使用多個(gè)association的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • SpringBoot統(tǒng)一功能處理的方式詳解

    SpringBoot統(tǒng)一功能處理的方式詳解

    這篇文章主要為大家詳細(xì)介紹了SpringBoot統(tǒng)一功能處理的方式,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)或工作有一定借鑒價(jià)值,需要的可以參考一下
    2022-08-08
  • JavaGUI使用標(biāo)簽與按鈕方法詳解

    JavaGUI使用標(biāo)簽與按鈕方法詳解

    這篇文章主要介紹了JavaGUI使用標(biāo)簽與按鈕方法,前段時(shí)間學(xué)了GUI,總體上概念還是有點(diǎn)模糊,于是決定花點(diǎn)時(shí)間簡單整理下。先簡單介紹一下GUI,GUI就是圖形用戶界面
    2023-03-03
  • SpringMVC 實(shí)現(xiàn)用戶登錄實(shí)例代碼

    SpringMVC 實(shí)現(xiàn)用戶登錄實(shí)例代碼

    這篇文章主要介紹了SpringMVC 實(shí)現(xiàn)用戶登錄實(shí)例代碼的相關(guān)資料,需要的朋友可以參考下
    2017-02-02
  • springboot使用攔截器判斷是否登錄

    springboot使用攔截器判斷是否登錄

    這篇文章主要介紹了springboot使用攔截器判斷是否登錄,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • spring aop的簡單使用方法詳解

    spring aop的簡單使用方法詳解

    這篇文章主要介紹了spring aop的簡單使用方法詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-10-10

最新評(píng)論

科技| 九龙县| 全南县| 乌拉特中旗| 修水县| 高安市| 安阳县| 凭祥市| 延庆县| 攀枝花市| 子洲县| 三江| 遂昌县| 铜山县| 新源县| 上饶县| 城固县| 山阳县| 收藏| 肇州县| 柘城县| 周口市| 东丰县| 包头市| 兴隆县| 阜城县| 阿克苏市| 盐城市| 吴旗县| 通海县| 横山县| 漯河市| 嘉鱼县| 开原市| 罗平县| 武隆县| 普兰店市| 汾西县| 杨浦区| 保定市| 天门市|