首页  >  问答  >  正文

java - 单目运算符问题;

int a=4;
b=a*a++;
b的结果?

单目运算符优先级比双目运算符高,理应是先累加然后相乘得到20,为什么程序运算结果是16?

PHPzPHPz2764 天前594

全部回复(2)我来回复

  • PHP中文网

    PHP中文网2017-04-18 10:19:44

    int a = 4;
    int b = a*++a; // 20

    递增、递减的优先级的确比 * 要高,比如上例中 是先运算的 ++a

    但是 ++a a++ 还是有区别的

    回复
    0
  • PHP中文网

    PHP中文网2017-04-18 10:19:44

    a++是先取值,再计算自增1,++a是先自增再取值

    回复
    0
  • 取消回复