2019年6月26日 星期三

Java i++ 與 ++i

同學問了我i++與++i差在哪,
一時回答不上來,只好認真做功課了XD



int i = 1, j;
j = i++;
=> i = 2, j = 1
[先取值再+1]
暫存區存了j=1,運算i+1後設定回i(=2)

int i = 1, j;
j = ++i;
=> i = 2, j = 2
[先+1再取值]
暫存區存了j=2,運算i+1後設定回i(=2)

同樣都是我吃早餐,三明治與奶茶的順序都沒差,因為都會吃掉(=2)
但旁邊同事問起時,向他說的食物順序就有差別

以上,同行見笑,
如有任何指教請不吝留言告知,謝謝。

沒有留言:

張貼留言

無暇的程式碼(Clean code)金句

The only valid measurement of code quality: WTFs/minute.