看板 java 關於我們 聯絡資訊
各位高手好~ int a=5;b=7,c; c=a++ + b++; 這樣的程式執行順序應該是 先執行c=a+b 再執行 a++, b++ 執行結果c=12 a=6 b=8 可是為什麼在java的運算子優先順序裡 放在變數 "右邊"的++ 優先順序會"高於" +(plus) 因為照這個結果來說++的優先等級應該會比較低才對吧? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.115.236.24 ※ 編輯: Luckypenguin 來自: 140.115.236.24 (07/16 11:57)
pico2k:請去看bytecode... 07/16 12:08
xlk:這跟++a順序高於plus或為什麼吃飯一樣沒有為什麼 要用心記住喔 07/16 14:56
※ 編輯: Luckypenguin 來自: 140.115.236.24 (07/16 16:29)
Luckypenguin:++a會先執行所以優先等級高這個我比較能體會 07/16 16:30
Luckypenguin:a++比較晚執行但是為何他優先等級比+高 07/16 17:08
hilorrk:++a和a++的差別也許不是在執行的早晚 而是做的動作的差別 07/16 18:22
AmosYang:去看bytecode... (google javap) ... 07/16 18:49
Luckypenguin:我瞭解了 感謝大家! 07/16 20:42
sbrhsieh:precedence 是指 operator 與 operand 結合的順序 07/17 18:36