1. 程式人生 > >《java面試題01》--try..catch以及i++和++i的用法

《java面試題01》--try..catch以及i++和++i的用法

碼程式碼的過程中,對於有些問題當時覺著是弄明白了,過段時間再遇到可能還是會出問題。主要還是對知識點的理解不透徹,每次重頭看都會有更進一步的理解,對於此類問題,簡單綜合整理下:

上程式碼:

    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的區別是容易出問題的地方!