赋值运算符

java当中的赋值运算符:

  =

  +=

   -=

  *=

  /=

  %=

赋值运算:

public class Temp {
    public static void main(String[] args) {
        int i = 10;
        
    }
}

赋值运算符的运算时先算等号右边再算等号左边,与其他运算符的从左往右有些不同

public class Temp {
    public static void main(String[] args) {
        int i = 10;
        i += i-= i + i;
        System.out.println("i=" + i);
        /*
            i-=20
            i+= 10 -10
            i = 0; 
        */
        
    }
}

+= 有什么作用呢?

  1、从值的意义上来说

    i += 10 相当于i = i+ 10;

  2、当需要进行类型转换的时候,+=可以自动进行强制类型转换

    

public class Temp {
    public static void main(String[] args) {
        byte b1 = 10, b2 = 10, b3 = 10;
        b3 += b1;
        b3 = (byte)(b3 + b2);
    }
}

通过反编译可以观察到+=自动执行的类型转换:

 -=这些也同理。

原文地址:https://www.cnblogs.com/aigeileshei/p/10553987.html