把代碼寫的簡潔明了是每個Java程序員必須懂得一門學問,表達清晰的代碼無論在糾錯時還說在修改時都更加方便,這也大大提高了使用Java做開發的效率。
首先。我們要搞清楚優化代碼的目的,減小代碼的體積,提高代碼運行的效率。
代碼優化具體細節:
盡量指定類、方法的final修飾符
盡量重用對象特別是String的使用,出現字符串連接時使用StringBuilder/StringBuffer代替。
盡可能使用局部變量
及時關閉流:進行數據庫連接、I/O流操作,在使用完畢后,及時關閉以釋放資源。
盡量減少對變量的重復計算
盡量采用懶加載的策略,即在需要的時候才創建
慎用異常
不要在循環中使用try…catch…,應該把其放在外層
如果能估計到待添加的內容長度,為底層以數組方式實現的集合、工具類指定初始長度
當復制大量數據時,使用System.arraycopy()命令
乘法和除法使用移位操作:移位操作雖然快,但是可能會使代碼不太好理解,因此 加上相應的注釋。
循環內不要不斷創建對象引用
不要將數組聲明為public static final
盡量在合適的場合使用單例
使用單例可以減輕加載的負擔、縮短加載的時間、提高加載的效率,
通信時盡量避免隨意使用靜態變量
及時清除不再需要的會話
實現RandomAccess接口的集合比如ArrayList,應當使用普通的for循環而不是 foreach循環來遍歷
使用同步代碼塊替代同步方法
將常量聲明為static final,并以大寫命名
將常量的名字以大寫命名也可以方便區分出常量與變量
不要創建一些不使用的對象,不要導入一些不使用的類
程序運行過程中避免使用反射
使用數據庫連接池和線程池
使用帶緩沖的輸入輸出流進行IO操作,這可以極大地提升IO效率
LinkedList 不要讓public方法中有太多的形參
字符串變量和字符串常量equals的時候將字符串常量寫在前面,可以避免空指針異常
不要對超出范圍的基本數據類型做向下強制轉型
公用的集合類中不使用的數據一定要及時remove掉
使用有效率的方式去遍歷Map
學習就像逆水行舟,學習Java更是這樣,將Java代碼寫的簡潔明了,不要讓別人看見你的代碼時間想到的是刪了重寫而不是代碼優化。