java m4a文件拼接_面试官:为啥不提倡字符串拼接?看阿里java开发手册怎么说
生活随笔
收集整理的這篇文章主要介紹了
java m4a文件拼接_面试官:为啥不提倡字符串拼接?看阿里java开发手册怎么说
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
阿里規約
先來看阿里java開發手冊的第22條,循環體內,字符串的連接方式,使用 StringBuilder 的 append 方法進行擴展。
說明:下例中,反編譯出的字節碼文件顯示每次循環都會 new 出一個 StringBuilder 對象,然后進行 append操作,最后通過 toString 方法返回 String 對象,造成內存資源浪費。
反例:
String str = "start";for (int i = 0; i < 100; i++) { str = str + "hello"; }反編譯
我么先寫一個類測試一下是否是這樣的呢?眼見為實,耳聽為虛,Let`s go。
反編譯 javap -c Test.class ,接下來看結果,從反編譯的結果看循環體內每拼接一次就會去new一個StringBuilder。
那么,m2方法的字節碼呢?我們可以看到是直接調用的append方法,而沒有每循環一次new一個StringBuilder對象了。
總結
1、字符串拼接,+號和StringBuilder是相等的,但是在循環體內使用 StringBuilder 的 append 方法效率更優,尤其是數據量很大的情況下。
2、使用字節碼的方式可以很好查看代碼底層的執行,從而可以看出哪些實現效率高,哪些實現效率低;可以更好的對我們的代碼做優化。讓程序執行效率更高。
關注并私信我獲取最新【阿里java開發手冊泰山版】
總結
以上是生活随笔為你收集整理的java m4a文件拼接_面试官:为啥不提倡字符串拼接?看阿里java开发手册怎么说的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 华为手机怎么看图片属性_华为手机音量小怎
- 下一篇: 影响线型缩聚物分子量的因素_运城专业超高