课程
/后端开发
/Java
/Java入门第一季(IDEA工具)升级版
由优先级表格可以知道
++ -- 优先级 比=高
可是 如果这样算 a=++b与a=b++没有区别
但是 实际上两个值不相同
2018-07-16
源自:Java入门第一季(IDEA工具)升级版 3-8
正在回答
这位兄弟提的问题不是运算符优先级别的问题,而且表达式书写不同而得到不同结果的问题,java中就是规定 a++与++a的结果是不一样的,其实其他语言也是这么规定的。 ++a 或者 a++ 都是一个完整的表达式,不能被拆分的。
你问题中 第二个表达式 a = b++; 并不是因为优先级 b先自加 然后再将结果给a ,而是只要b++这么写了,就一定会执行 b=b+1,然后整个b++的结果为b给a进行赋值。
第一个表达式 a= ++b;其实也是执行了2步,先b = b+1,然后整个++b的结果为b+1给a进行赋值。
鱼入深海 提问者
举报
0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始
4 回答System.out.println("a等于b:"+(a == b)) ????
3 回答b=a++问题
2 回答按照优先级的话,b=a++为什么不先自增,在赋值。
3 回答why a=5,b=a++
1 回答System.out.println("a等于b:" + (a==b));中为什么要有+