在
Java
開發中,
try-catch
語句經常用於異常捕獲。
值得註意的是,盡管一次
try-catch
中的效能損失難以覺察,
但一旦將
try-catch
語句套用於迴圈或遍歷體內,就可能給系統效能造成極大的損害。
範例程式碼:
@Test
publicvoidtest() {
longstart = System.currentTimeMillis();
inta = 0;
for(int i=0;i<1000000000;i++){
try {
a++;
}catch (Exception e){
e.printStackTrace();
}
}
longuseTime = System.currentTimeMillis()-start;
System.out.println("useTime:"+useTime);
}
上面這段程式碼執行結果:
useTime:10
。
下面是一段將
try-catch
移到迴圈體外的程式碼,效能直接提升了將近一半,
範例程式碼:
@Test
publicvoidtest(){
longstart = System.currentTimeMillis();
inta = 0;
try {
for (int i=0;i<1000000000;i++){
a++;
}
}catch (Exception e){
e.printStackTrace();
}
longuseTime = System.currentTimeMillis()-start;
System.out.println(useTime);
}
上面這段程式碼執行結果是:
useTime:6
。
大家感覺今天的效能最佳化技巧怎麽樣呢,歡迎在評論區留下自己的看法。
完整程式碼片段來源於程式碼小抄,歡迎點選進入小程式閱讀!
線上存取:https://codecopy.cn/post/92nqby
更多優質程式碼歡迎進入小程式檢視!
往期推薦