java中a++与++a区别
a++与++a的区别,如果单独使用没有任何区别,如果在运算中就有区别了,a++是先运算在赋值,而++a是先赋值在运算!!
先看a++的代码哦
class demo1
{
public static void main(String[] args)
{
int a=20;
int b=19;
/*
先运算在赋值;
1. b先和a作比较,b比a小为假,所以a还是20;
2. b在自增加1,所以b为20;
3. 因为三元判断为假,所以c等于自增后的b加a为40; */
int c= b++>=a ? a++:a+b;
System.out.println(a);//结果是:
System.out.println(b);//结果是:
System.out.println(c);//结果是:
}
}
上面的代码中的b就是指a++中的a哦
b++先运算在赋值;
1. b先和a作比较,b比a小为假,所以a还是20;
2. b在自增加1,所以b为20;
3. 因为三元判断为假,所以c等于自增后的b加a为40;
下面是++a的代码
class demo1
{
public static void main(String[] args)
{
int A=20;
int B=19;
/*
先赋值在运算;
1.B先自增为20;
2.三元运算自增后的B等于A,所以c等于20;
3.因为三元运算为真,所以A自增1为21;
*/
int C= ++B>=A ? A++:A+B;
System.out.println(A);//结果是:21
System.out.println(B);//结果是:20
System.out.println(C);//结果是:20 }
}
同样的,上面的代码中的B就是指++a中的a哦
++B先赋值在运算;
1.B先自增为20;
2.三元运算自增后的B等于A,所以c等于20;
3.因为三元运算为真,所以A自增1为21;
不喜勿喷,毕竟是初学者哦