Re: [翻譯] 拆穿 Java StringBuilder 的謠言

看板java作者 (老子我最神)時間11年前 (2013/04/02 00:08), 編輯推噓1(102)
留言3則, 3人參與, 最新討論串3/8 (看更多)
: 推 AI3767:那篇在迴圈內+=, 不是一次性加起來, 確實很高可能造成變慢 04/01 23:46 : → cha122977:可以請教為何 str+=str; 會重複宣告嗎?不太明白 04/01 23:56 大概看懂版主跟那篇文章是啥意思了,我用白話一點 (有務請修正) 如果你的程式碼長這樣 String str = ''; while(i < 100000) { str += 'a'; } jdk 會把迴圈解釋成像這樣 while(i < 100000) { str = new StringBuilder(str).append('a'); } 但是如果你自己用 StringBuilder 的話會是這樣用 StringBuilder str = new StringBuilder(); while(i < 100000) { str.append('a'); } 所以差在的時間應該很明顯在哪邊 !! 雖然 + 號會被解釋成 append,但是他不是萬用的 在某些情況仍需要自行使用 StringBuilder 來提升效能 這應該就是那邊文章的結論 !? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 49.159.136.214

04/02 00:10, , 1F
太久沒寫了,把 " 寫成 ' ,不過表達意思應該沒差
04/02 00:10, 1F

04/02 15:08, , 2F
python 寫太多XD?
04/02 15:08, 2F

04/02 16:10, , 3F
也可能是js或ruby呀xd
04/02 16:10, 3F
文章代碼(AID): #1HMR417x (java)
討論串 (同標題文章)
本文引述了以下文章的的內容:
以下文章回應了本文 (最舊先):
完整討論串 (本文為第 3 之 8 篇):
文章代碼(AID): #1HMR417x (java)