问答详情
源自:3-2 Java中的算术运算符

关于自增跟自减的问题

AGE4=--4;这个输出等于3

AGE4=4--;这个输出等于4

a=5;

b=a++;

输出等于:a=6

                b=5


那么自增自减只是对相对变量有影响,所以b显示还是5。


真心有点迷糊望解答

提问者:qq_TheFirebird_03629981 2016-07-19 20:20

个回答

  • LoveLetter
    2016-07-19 20:41:51
    已采纳

    你可以这样理解:

    { a=5; b=a++;  }转换为{ a=5; b=a; a=a+1; }。

    { a=5; b=++a; }转换为{ a=5; a=a+1; b=a; }

    ++在前和在后就是代码中 a=a+1; 这行的先后问题。 

  • qq_TheFirebird_03629981
    2016-07-19 20:45:18

    看来我被自己误导了,好尴尬

  • 慕粉3690779
    2016-07-19 20:35:34

    --X 是指先运行X=X-1, 此时的输出X 已经变为X-1。 ++X同理

    X--是指先使用X这个数值后,再运行X=X-1。      X++同理

    此题中就是先将a=5的值赋给b,再运行a=a+1。 所以b的值为5,a为被试用(赋值给b)后运行+1,得到的6。

  • small_luck
    2016-07-19 20:32:06

    因为b=a先赋值了。此时b=5.然后a开始进行运算,++,a=6.

    你可以想象一下执行顺序,从=执行开始,过去遇到a,此时赋值成功,然后继续执行a++。a变了。

  • n_try
    2016-07-19 20:29:07

    --,++符号在数值的左边时,是先进行数值运算的,然后在给变量赋值;当--,++在数值的右边时,是先给变量赋值,然后在自身进行加减的。符号的位置不同,代表的不同