我正在嘗試Class.Method()++
但它不起作用。Java方法()++ VS方法()+ 1
簡單的例子:
Person類
public class person {
private int age;
public void age(int value) {
this.age = value;
}
public int age() {
return this.age;
}
}
在主類
發言之後得到一個錯誤約p1.age()++
:
public static void main(String[] args) {
person p1 = new person();
p1.age(p1.age()++); // Get an error
}
但低於正常工作:
public static void main(String[] args) {
person p1 = new person();
p1.age(p1.age()+1); // It works fine
}
的主要問題:
爲什麼p1.age()++
得到錯誤,但p1.age()+1
不?
P.S:
我知道我能做到這一點:
person p1 = new person();
int myAge = p1.age();
p1.age(myAge++);
您是否試過'(p1.age())++'而不是? –
@MehdiKaramosly沒有嘗試,但即使這樣做,它會是如此可怕的代碼... –
作爲一個方面:[你確定'P1。年齡(myAge ++);'會工作](http://stackoverflow.com/questions/7911776/what-is-x-after-x-x)? – Arjan