當前位置: 妍妍網 > 碼農

今日程式碼大賞 | try-catch 優雅使用

2024-04-02碼農

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

更多優質程式碼歡迎進入小程式檢視!

往期推薦