《java面試題01》--try..catch以及i++和++i的用法
阿新 • • 發佈:2018-11-12
碼程式碼的過程中,對於有些問題當時覺著是弄明白了,過段時間再遇到可能還是會出問題。主要還是對知識點的理解不透徹,每次重頭看都會有更進一步的理解,對於此類問題,簡單綜合整理下:
上程式碼:
public static void main(String[] args) { System.out.println(test1()); } public static int test1() { int i = 100; try { //int a = 1/0; System.out.println("try"); //int a = ++i; int a = i++;//先運算int a = i; 再賦值i = i+1x 100 System.out.println("a: "+a); System.out.println("i: "+i); return a; } catch (Exception e) { ++i; System.out.println("catch"); return i; }finally { ++i; System.out.println("finally"); return i; } }
執行main(),列印結果:
try
a: 100
i: 101
finally
102
此處, try...catch...finally的執行先後順序, 以及i++和++i的區別是容易出問題的地方!