1. 程式人生 > >java中的i++與++i有什麼區別?

java中的i++與++i有什麼區別?

剛開始接觸時,做了一些小測試,還以為這兩個沒有什麼區別。

public class OperatorDemo {
    public static void main(String[] args){
        int a = 10;
        a++;

        System.out.println(a);
    }
}


package com.javapr;

public class OperatorDemo {
    public static void main(String[] args){
        int a = 10;
        ++a;
        System.out.println(a);
    }
}

# 兩者的輸出都是11

 

後來慢慢發現是有區別的。

看例子:

public class OperatorDemo {
    public static void main(String[] args){
        int a = 10;
        int b = a++;
        System.out.println(a);
        System.out.println(b);
    }
}


# 輸出結果:11    10

 

public class OperatorDemo {
    public static void main(String[] args){
        
int a = 10; int b = ++a; System.out.println(a); System.out.println(b); } } # 輸出結果:11 11

 

結論:單獨使用的時候,++或者--放在變數的前面或者後面,結果一樣。

參與其他操作的時候:

++在後面,先拿變數做操作,然後變數再++

++在前面,先變數++,然後再拿變數做操作