剛纔、超人兄在羣裏說了一個tb驗證碼、
哈哈、當你知道^是幾次方是對的、是得2
但是java語言裏是^:兩邊的位不同時,結果爲1,否則爲0.
還有運算符的優先級、哈哈
上當了、過去的知識就給忘了呢、還是學以致用的好、O(∩_∩)O哈哈~
在計算的的思維裏都是0和1、二進制數、
0001
0010
------
0011
答案是:3
好吧我們回顧下java語言中的運算符
運算符
算術
單目:+(取正)-(取負) ++(自增1) - -(自減1)
雙目:+ - * / %(取餘)
三目:a>b?true:false 說明:當a大於b的時候,爲true(也就是冒號之前的值),否則爲false;這整個運算符包括一個關係運算符(可以是“>”"<""!="等等),一個“?”,一個“:”,冒號前後需要有兩個表達式或者是值或者是對象。關係
等於符號:==,不等於符號:!= ,大於符號:>, 小於符號:<,大於等於符號:>= ,小於等於符號:<= 。
位與邏輯
位運算符 與(&)、非(~)、或(|)、異或(^)
&:當兩邊操作數的位同時爲1時,結果爲1,否則爲0。如1100&1010=1000
| :當兩邊操作數的位有一邊爲1時,結果爲1,否則爲0。如1100|1010=1110
~:0變1,1變0
^:兩邊的位不同時,結果爲1,否則爲0.如1100^1010=0110
與(&&)、非(!)、或(||)
賦值
= += -= *= /= %= &= ^= |= <<= >>=
instanceof
運算符綜述
Java 的表達式就是用運算符連接起來的符合Java
規則的式子.運算符的優先級決定了表達式中運算執行的先後順序.例如,x<y&&!z相當於(x<y)&&(!z),沒有必要去記憶運算符號的優先級別,在編寫程序時可儘量的使用括號來實現你想要的運算次序,以免產生難以閱讀或含糊不清的計算順序.運算符的結合性決定了並列相同級別的運算符的先後順序,例如,加減的結合性是從左到右,8-5+3
相當於(8-5)+3.邏輯否運算符 的結合性是右到左, x 相當於!(!x).表3.4是Java所有運算符的優先級和結合性。
位移
<< 帶符號左移 >>帶符號右移 >>> 無號右移
運算符優先級
按優先級從高到低排列如下:[ ] ( ) ++ -- ! ~ instanceof * / % + - << >> >>> <> < = > \ == != &^& & || ? := op= 。