问答详情
源自:3-3 Java中的赋值运算符

结果不应该是3?为啥是30

int one =10;

int two =20;

int three =30;

three/=one;

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


提问者:我不是混子 2020-12-09 15:20

个回答

  • C_MAN
    2021-02-03 16:43:01

    因为three=one+two;three+=one;等都是对变量three重新赋值,所以不管你初始的int three=任何数,都不会改变three=one+two==>30的结果,下面是2-4章节的变量重新赋值的图示

    5358cb3400019b5606390263.jpg

  • 菠萝蘸酱油
    2020-12-09 17:01:26

    任务里three运算结果为30,是因为three已经经过了前面的加等于、减等于、乘等于的一系列运算,three的值已经变了,three已经变成300了。所以three/=one就相当于300/10=30。