java內存優化的方法總結
自動裝箱是將基礎數據類型轉換為相應的復雜類型,在HashMap的追加刪除調查中充滿了自動裝箱問題,因此盡量避免HashMap代替SparseArray和ArrrayMap等問題。
2、內存復用。資源復用:通用字符串、顏色、布局。
視圖復用:類似于RecyclerView的優化再利用。
目標池:創建目標池,無需重復創建目標,類似于線程池,messae享受元模式。
Bitmap對象復用:使用inBitmap屬性,Bitmap解碼器可以通知Bitmap解碼器使用已經存在的存儲區域,新解碼的bitmap可以嘗試使用以前bitmap在heap中占有的存儲區域。
3、App內存過低時,可以自主釋放內存。在App退出后臺的內存緊張被Kill丟失的情況下,選擇重寫Application中onTrimmemory/onLowMemory方法,釋放圖像緩存、靜態緩存。
4、優化其他場景。item在無法回收的情況下釋放了圖像的引用。
使用字符串連接時,請盡量使用StringBuilder、StringBuffer(內存抖動)
定制view減少onDraw的時間和執行次數。
盡量使用靜態內部類。
盡量使用基礎數據類型。
適當時使用軟/弱引用。
內容擴展:
對程序員們來說,代碼優化是一個很重要的課題??赡苡行┤擞X得沒用,一些細小的地方有什么好修改的,改與不改對于代碼的運行效率有什么影響呢?這個問題我是這么考慮的,就像大海里面的鯨魚一樣,它吃一條小蝦米有用嗎?沒用,但是,吃的小蝦米一多之后,鯨魚就被喂飽了。代碼優化也是一樣,如果項目著眼于盡快無BUG上線,那么此時可以抓大放小,代碼的細節可以不精打細磨;但是如果有足夠的時間開發、維護代碼,這時候就必須考慮每個可以優化的細節了,一個一個細小的優化點累積起來,對于代碼的運行效率絕對是有提升的。
代碼優化的目標是:
1、減小代碼的體積
2、提高代碼運行的效率
到此這篇關于java內存優化的方法總結的文章就介紹到這了,更多相關java內存優化的四種方法內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!
相關文章:
