[請問] JAVA新手自學疑問

看板ask作者 (blueSR)時間7年前 (2017/04/10 11:06), 編輯推噓3(305)
留言8則, 5人參與, 最新討論串1/1
如下程式碼片段: int a = 3, b = 4; if ( a++ >= 3 || b-- <= 3){ System.out.println(“1:” + a + “:”+ b); }else { System.out.println(“2:” + a + “:”+ b); } 輸出結果? 請問b為何最後輸出是4 在經過IF判斷後不是應該-1等於3嗎 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 218.32.21.130 ※ 文章網址: https://www.ptt.cc/bbs/ask/M.1491793581.A.84B.html

04/10 11:13, , 1F
建議可以先了解運算子的優先順序
04/10 11:13, 1F

04/10 11:33, , 2F
輸出結果是1:3:4吧?
04/10 11:33, 2F

04/10 11:36, , 3F
抱歉當我沒說= =""
04/10 11:36, 3F

04/10 11:41, , 4F
04/10 11:41, 4F

04/10 12:47, , 5F
英文不是很好,是說布林第一段參數成立,即不處理後面?
04/10 12:47, 5F

04/10 12:56, , 6F
感謝,GOOGLE到了 &&若參數1不成立,即不運算後面
04/10 12:56, 6F

04/10 17:06, , 7F
新手千萬不要這樣寫,就算老手也不要這樣寫。
04/10 17:06, 7F

04/11 09:15, , 8F
先搞清楚兩件事:變數++、邏輯運算
04/11 09:15, 8F
文章代碼(AID): #1OwlQjXB (ask)