System.out.println("three=one+two==>"+A); 为什么是0?

public class HelloWorld{

    public static void main(String[] args) {

   int one = 10 ;

        int two = 20 ;

        int A=0;

        A=one+two;

         int B=A+=one;

         int C=A-=one;

         int D=A*=one;

         int E=A /=one;

         int F=A%=one;

         

         System.out.println("three=one+two==>"+A);

         System.out.println("three=one+=two==>"+B);

         System.out.println("three=one*=two==>"+C);

         System.out.println("three=one/=two==>"+D);

         System.out.println("three=one%=two==>"+F);

     

    }

}


慕仰1832946
浏览 1142回答 1
1回答

阿旭_

A的最后一次赋值是在int F = A %= one;    等价变形为 int F = (A = A % one ); //此时A的值对one的值取余,没有余数(除尽了),即:0的值被直接赋值给了A,又间接复制给了F。所以A和F的值都是0
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java