課程
/后端開發(fā)
/Java
/Java入門第一季(IDEA工具)升級版
為什么不加str1==str2旁邊的括號也可以運算呢
2020-03-02
源自:Java入門第一季(IDEA工具)升級版 3-4
正在回答
因為在運算符優(yōu)先級表中+的運算級大于==,那意味著什么呢?就是說在你題中的運算順序是先把+兩邊的字符連接,在用連接起來的整體與str2相比較(就是指判斷這個整體與str2是否相同:如果不相同輸出false;如果相同,輸出true),即:
先做? ? ? "str1等于str2"+str1? ? ?,運行結(jié)果是這樣的:? ?str1等于str2hello
然后做? ? str1等于str2hello==str2? ? ?,最終結(jié)果是這樣的:? ? false
而我加了括號的運算順序是怎樣呢?先計算==兩邊的表達式(就是指先判斷str1與str2是否相同:如果不相同輸出false;如果相同,輸出true),然后在將 str1等于str2與前一步的運算結(jié)構(gòu)相加,即:
先做? ? ? "str1==str2"? ? ? ? ?,運行結(jié)果是這樣的:? ? ? ?false
然后做? ? str1等于str2+false? ? ,最終結(jié)果是這樣的:? ?str1等于str2false
總而言之:加括號與不加括號都可以運算,但是由于運算順序不同,運算結(jié)果也不同!希望題主能夠深刻理解。
不應(yīng)該的啊,你如果執(zhí)行的話應(yīng)該只會顯示false,前面的字符串是 沒有的啊
舉報
0基礎(chǔ)萌新入門第一課,從Java環(huán)境搭建、工具使用、基礎(chǔ)語法開始
2 回答為什么不加final結(jié)果一樣?
3 回答為什么結(jié)果不一樣//
3 回答為什么我的結(jié)果不一樣???
2 回答為什么加final與不加final結(jié)果一樣?加與不加的區(qū)別在哪?
2 回答為什么兩種結(jié)果不一樣?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學習伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2020-03-21
因為在運算符優(yōu)先級表中+的運算級大于==,那意味著什么呢?就是說在你題中的運算順序是先把+兩邊的字符連接,在用連接起來的整體與str2相比較(就是指判斷這個整體與str2是否相同:如果不相同輸出false;如果相同,輸出true),即:
先做? ? ? "str1等于str2"+str1? ? ?,運行結(jié)果是這樣的:? ?str1等于str2hello
然后做? ? str1等于str2hello==str2? ? ?,最終結(jié)果是這樣的:? ? false
而我加了括號的運算順序是怎樣呢?先計算==兩邊的表達式(就是指先判斷str1與str2是否相同:如果不相同輸出false;如果相同,輸出true),然后在將 str1等于str2與前一步的運算結(jié)構(gòu)相加,即:
先做? ? ? "str1==str2"? ? ? ? ?,運行結(jié)果是這樣的:? ? ? ?false
然后做? ? str1等于str2+false? ? ,最終結(jié)果是這樣的:? ?str1等于str2false
總而言之:加括號與不加括號都可以運算,但是由于運算順序不同,運算結(jié)果也不同!希望題主能夠深刻理解。
2020-03-02
不應(yīng)該的啊,你如果執(zhí)行的話應(yīng)該只會顯示false,前面的字符串是 沒有的啊