这是一个基本的java运算凳陆符的问题自增 a++和自减b--的优先级高于 a+b这种普通加减。
第一步:实现原本的计算并输出内源粗逗容
public static void main(String[] args) {
int a=10 ;
int b=3;
System.out.println(a+=b-=a++-b--);
}
第二步:详细的解析数据
运算的顺序应该是冲内层括号依次向外。
1 :首先b--
2 :a++
3:a++结果减去b--的结果
4:b减去3中的结果
5:雹卖a加步骤4中的结果
public static void main(String[] args) {
int a=10 ;
int b=3;
System.out.println(a+=(b-=((a++)-(b--))));
}
直接相加,然后会变成1000..000,最前面的这仿汪轿个1会溢出,然备肆后剩陵李下的就是000..0000