JAVA 位運算子和位移運算子 - 程式前沿

文章推薦指數: 80 %
投票人數:10人

java位運算子包括&(與) AND |(或) OR ^(異或) XOR ~(非) NOT 位移運算子包括>>(右移) >(右移,左邊空出的位以0填充) 顧名思義,位運算子 ... 程式語言前端開發IOS開發Android開發雲端運算人工智慧伺服器搜尋資料庫軟體開發工具JAVA位運算子和位移運算子2018.06.13程式語言HOME程式語言JAVA位運算子和位移運算子Advertisementjava位運算子包括 &(與)      AND |(或)      OR ^(異或)    XOR ~(非)      NOT 位移運算子包括 >>(右移) <>>(右移,左邊空出的位以0填充) 顧名思義,位運算子用於位運算,那就只能對整型或者字元型進行運算。

而除了~(非)是一元運算子之外其他的都為二元運算子。

 所有位運算都會把值轉為二進位制進行運算 &(與)  運算規則:0&0=0  0&1=0 1&0=0  1&1=1  即:兩位同時為1時,結果為1,否則為0   Java程式碼  int a=(3&5);  System.out.println(a);  System.out.println(Integer.toBinaryString(3));   System.out.println(Integer.toBinaryString(5));     結果列印為      1     011     101    解析:3的二進位制為011,5的二進位制為101,與操作結果為001。

轉為十進位制是1。

 |(或)      運算規則:0|0=0  0|1=1 1|0=1  1|1=1     即:參加運算的兩個物件只要有一個為1,其結果就為1    Java程式碼  int a=(3|5);  System.out.println(a);  System.out.println(Integer.toBinaryString(3));   System.out.println(Integer.toBinaryString(5));     結果列印為     7    011    101    解析:3的二進位制位011,5的二進位制位101。

或操作結果為111。

轉為10進製為7 ^(異或)    運算規則:1^0=0  0^1=1  1^0=1  1^1=0         即:參加運算的兩個物件,如果兩個個相應位為“異”(值不同),則該位結果為1,否則為0    Java程式碼  int a=(3^5);  System.out.println(a);  System.out.println(Integer.toBinaryString(3));   System.out.println(Integer.toBinaryString(5));          結果列印為          6       011       101    解析:3的二進位制位011,5的二進位制位101。

或操作結果為110。

轉為10進製為6 ~(非)    運算規則:~1=0  ~0=1                 即:對一個二進位制數按位取反,即0變為1,1變為0    ~運算子的優先順序比算數運算子、關係運算子、邏輯運算子和其他運算子都高 <>(右移) 將一個數的各二進位制位全部右移諾幹位,正數左補0,負數左補1,右邊丟棄。

 運算元每右移一位,相當於該數除以2  Java程式碼  int a=(9>>1);  System.out.println(a);  System.out.println(Integer.toBinaryString(9));   System.out.println(Integer.toBinaryString(4));          結果列印為         4        1001        100         解析:9的二進位制為1001,右移1位後,左正數補0,右邊丟棄。

結果為0100。

轉為10進位制後為4。

 AdvertisementAdvertisement写评论取消回覆很抱歉,必須登入網站才能發佈留言。

近期文章Vue中容易被忽視的知識點2019.12.09if我是前端Leader,談談前端框架體系建設2019.12.09Spark入門(一)用SparkShell初嘗Spark滋味2019.12.08Spark入門(二)如何用Idea運行我們的Spark項目2019.12.08Spark入門(三)Spark經典的單詞統計2019.12.08Spark入門(四)Spark的map、flatMap、mapToPair2019.12.08Spark入門(五)Spark的reduce和reduceByKey2019.12.08Spark入門(六)Spark的combineByKey、sortBykey2019.12.08Spark入門(七)Spark的intersection、subtract、union和distinct2019.12.08Spark實戰尋找5億次訪問中,訪問次數最多的人2019.12.08AdvertisementAdvertisement



請為這篇文章評分?