1. 程式人生 > >提高Java效能的幾個高效用法

提高Java效能的幾個高效用法

1.迴圈

 1.在重要的迴圈裡,消除迴圈終止判斷時的方法呼叫。。。

替換為…

2.通常,把與迴圈index不相關的移到迴圈的外面

  

改為

  

2.字串

      ■ 消除字串連線

      ■ 建立長字串時,總是使用StringBuffter代替String

      ■ 預先分配StringBuffer空間

      StringBuffer sb = new StringBuffer(5000);

3.基本資料型別

      ■ 在重要的迴圈裡使用基本資料型別(int型資料通常比long/double型資料更快)

      ■ 基本資料型別(Boolean,Integer,etc)的包裝類主要用在當傳遞的方法引數必須是一個物件的引用時(而不是一個基本資料型別)

      ■ 對所有的常量代數表示式使用static final修飾符

         一 使常量更容易引用(編譯器預先計算常量表達式)

4.異常

      ■ 異常只用於單個真正的錯誤條件

         一 丟擲一個異常和執行一個catch程式碼塊花費是很高的(主要由於當建立一個異常時要獲得執行緒棧的一個快照)

         一 只當條件真的異常時才丟擲一個異常

      ■ 使編譯器和執行時最優化,將幾個方法呼叫放在一個try/catch塊中,而不是為每個方法呼叫實現幾個try/catch塊

5.基準

      ■ 注意,所有這些技巧會因不同的平臺和虛擬機器而不同

         一 例如:在有些servlet容器內,通過一個OutputStream作為位元組輸出會更快

         一 在其它的容器內,通過一個PrintWriter輸出字元會更快

      ■ 這些技巧描述的是最可移植的建議

      ■ 你可能需要執行一些基準來判斷在你的平臺上怎麼樣是最快的