java位操作符的知識
二進制負數(shù)以它正值的補碼形式表達

補碼:反碼+1等于補碼
比如:System.out.println(Integer.toBinaryString(-5));
打印:1111 1111 1111 1111 1111 1111 1111 1011 不用想了肯定是32位
過程是這樣的:
一個負數(shù),比如-5,它的二進制在java里面是這樣表示
1000 0000 0000 0000 0000 0000 0000 0101
它的正值是:
0000 0000 0000 0000 0000 0000 0000 0101
反碼是:
1111 1111 1111 1111 1111 1111 1111 1010
再加上1是:
1111 1111 1111 1111 1111 1111 1111 1011
即得到打印的內(nèi)容
java ~ 操作符,對每個二進制位的內(nèi)容求反,即1變成0,0變成1
測試負數(shù):
int a = -5;/pic/p>
System.out.println(~a);
打。
過程是這樣的,首先表示出來這個負數(shù)
1111 1111 1111 1111 1111 1111 1111 1011(上面已經(jīng)提到為什么這樣表示)
【java位操作符的知識】相關(guān)文章:
java位操作符是什么02-15
Java相關(guān)知識09-10
Java開發(fā)史上10位牛人11-08
Java的Spring框架知識10-17
java語言入門知識12-12
Java基礎(chǔ)知識精選11-09
java基礎(chǔ)知識09-16
JAVA數(shù)組知識解析03-03
Java線程知識筆記09-09