java位操作符的知识
二进制负数以它正值的补码形式表达

补码:反码+1等于补码
比如:System.out.println(Integer.toBinaryString(-5));
打印:1111 1111 1111 1111 1111 1111 1111 1011 不用想了肯定是32位
过程是这样的:
一个负数,比如-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
即得到打印的内容
java ~ 操作符,对每个二进制位的内容求反,即1变成0,0变成1
测试负数:
int a = -5;/pic/p>
System.out.println(~a);
打印:
过程是这样的,首先表示出来这个负数
1111 1111 1111 1111 1111 1111 1111 1011(上面已经提到为什么这样表示)
【java位操作符的知识】相关文章:
java位操作符是什么02-15
Java相关知识09-10
Java开发史上10位牛人11-08
Java的Spring框架知识10-17
java语言入门知识12-12
Java基础知识精选11-09
java基础知识09-16
JAVA数组知识解析03-03
Java线程知识笔记09-09