Int類型邏輯運算符的詳細描述---含代碼

int型是4字節32位
&,|,~,^,<<,>>,>>>

"&" 按位與,計算時將 十進制 轉爲 二進制 再進行計算,同位置爲1,則結果爲1,其餘情況皆爲0
3:		00000000	00000000	00000000	00000011
6:		00000000	00000000	00000000	00000110
3&6:	00000000	00000000	00000000	00000010

"|" 按位或,計算時將 十進制 轉爲 二進制 再進行計算,同位置爲0的結果爲0,其餘情況皆爲1
3:		00000000	00000000	00000000	00000011
6:		00000000	00000000	00000000	00000110
3|6:	00000000	00000000	00000000	00000111

"~"	按位取反,將二進制下所有爲0的數換位1,爲1的都換位0
3:		00000000	00000000	00000000	00000011
~3:	11111111	11111111	11111111	11111100

"^"	按位異或,只有0和1的時候爲1,0和0爲0,1和1也爲0
3:		00000000	00000000	00000000	00000011
6:		00000000	00000000	00000000	00000110
3^6:	00000000	00000000	00000000	00000101

"<<" 左移運算,a<<b,將a轉爲二進制後左移b爲,低位補0
3:					00000000	00000000	00000000	00000011
3<<1:			 0	00000000	00000000	00000000	00000110
3<<6:		000000	00000000	00000000	00000000	11000000

">>" 右移運算,a>>b,將a轉爲二進制後向右移b位,高位補0,負數時高位補1
3:		00000000	00000000	00000000	00000011
3>>6	00000000	00000000	00000000	00000000	000011
3>>1	00000000	00000000	00000000	00000001	1

">>>"無符號右移運算,a>>>b,將a轉爲二進制,向右移b位,低位去掉,高位不管是0還是1都補0
-4:	11111111 	11111111    11111111    11111100
-4>>>4:	00001111	11111111	11111111	11111111	1100


二進制下負數的表示:這個數的反碼加1
5:			00000000	00000000	00000000	00000101
5的反碼:	11111111	11111111	11111111	11111010
-5:		11111111	11111111	11111111	11111011


代碼:
	//10:        00000000  00000000    00000000    00001010
	//10>>1:     00000000  00000000    00000000    00000101
	/*int oldCapacity = 6;
	int newCapacity = oldCapacity + (oldCapacity >> 1);
	System.out.println(newCapacity);*/
	System.out.println(3&6);
	System.out.println(3|6);
	//3:         00000000  00000000    00000000    00000011
	//~3:       11111111  11111111    11111111    11111100
	//4:        00000000  00000000    00000000    00000100
	//4反碼:   11111111  11111111    11111111    11111011
	//-4:       11111111  11111111    11111111    11111100
	System.out.println(~3);

	System.out.println(3^6);

	System.out.println(3>>6);

	System.out.println(3>>1);

	System.out.println(-4>>>4);
  • 以上是關於int類型的各種運算符的詳細講解
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章