项目场景:
++或者–运算
问题描述:
System.out.println(a++);或者System.out.println(a–);输出的值不变
而System.out.println(++a);或者System.out.println(–a);输出的值会+1或者-1
package operater;
public class SuanShuYunSuanFu {
public static void main(String[] args) {
int a=20;
System.out.println(a++);
System.out.println("+++++++++++++++++++++++++++");
}
}
package operater;
public class SuanShuYunSuanFu {
public static void main(String[] args) {
int a=20;
System.out.println(++a);
System.out.println("+++++++++++++++++++++++++++");
}
}
原因分析:
参考链接:https://blog.csdn.net/a15089415104/article/details/114965829
System.out.println(a++) 输出结果不变,是因为计算机的执行顺序的原因。在这一条语句中,计算机先执行输出语句,此时a的值为不变,当输出语句完毕的时候,它才执行自增操作,
System.out.println(++a) 输出结果变化,是因为a要先执行自增操作才能被使用。
首先直接输出数值
然后在进行++操作。