int a = 0;
a++;
內(nèi)部執(zhí)行
int temp = a;
temp = temp + 1;
return temp;
在以下代碼中:
int num = 0;
for(int i=0;i<5;i++){
? ? ? ? num = num++;
}
System.out.println(num);
最終打印輸出結(jié)果為0祈噪。
先賦值num ?= num;//num = 0
{
int temp = 0;
temp = temp + 1;//temp ?= 1
return temp;//返回temp
}
返回值并沒有被num接收始藕,因而num仍等于0,后續(xù)循環(huán)仍然執(zhí)行相同的過程臼节,最終結(jié)果num為0接剩。
反之切厘,若換為num = ++num;
則執(zhí)行過程如下:
{
int temp = num;
temp = temp + 1;
return temp;//temp值返回給num
}
num = num;
最終輸出結(jié)果為5。
上述結(jié)果僅限于Java懊缺,C++中兩種方式結(jié)果都是5疫稿。