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

不明白int a=5; int b=++a;输出结果 a为什么是6呢?不应该是5吗?

不明白int a=5; int b=++a;输出结果 a为什么是6呢?不应该是5吗?

提问者:M学员 2015-03-26 19:40

个回答

  • 慕泽雨
    2015-04-12 15:06:59

    个人理解:

    int a=5;

    int b=++a ; 相当于分为两步执行 第一步  a=a+1  第二步  b=a

    所以合起来就是:

    int a=5;

    a=a+1;//这一步a=5+1=6,a的值是6;

    int b=a;//将6赋值给b,b的值是6

    所以最后的输出结果是 a=6;b=6

    另外:

    int a=5;

    int b=a++;相当于 第一步 b=a  第二步 a=a+1;

    所以合起来就是:

    int a=5;

    int b=a;//这一步b=5;

    a=a+1;//这一步a=5+1=6;

    最后的输出结果就是 a=6;b=5

    希望这样能帮助你理解。

  • 发条橙
    2015-03-26 19:51:06

    ++a是先自增 后取值  

    如果是a++就是5了

  • baimax
    2015-03-26 19:45:57

    int b=++a相当于++a;int b=a;