1
爲什麼這個程序的輸出是10,爲什麼不是11?分配後增量表達式
public class Test {
public static void main(String[] args){
int p = 10;
p = p++;
System.out.println(p);
}
}
爲什麼這個程序的輸出是10,爲什麼不是11?分配後增量表達式
public class Test {
public static void main(String[] args){
int p = 10;
p = p++;
System.out.println(p);
}
}
雖然分配完成之前後綴++
改變p
,表達式的值保持的p
原始值,這是10
。這是什麼被分配到p
。
這裏是發生了什麼事情:
p
分配10
p
的價值增量p
遞增之前保存,並且新的值11
存儲在p
10
的值存儲回p
。我認爲它適用,如果你只是使用p ++;
SO上至少會有100個類似的問題。 – devnull