>>>好象都没有怎么用到。
解决方案 »
- JAVA 怎么在两个控件中间添加一个水平的分割线
- Ire po rt~ Sum ma r y区 很讨厌的问题啊~~~~有图 ~~~~很详细的图片啊!!~希望得到大家的帮助啊!谢谢啊!~
- 难道说用构造方法也能调用方法?
- jtable中下拉菜单失效,在线急等
- 唉怎么老是连不上SQLSERVER呢?
- 怎样在JTextArea控件中,对不同行的字体设置不同的颜色?
- java中的double类型只能表示如1234567.12形式的数值,整数部分超过七位就变成了科学计数法,请各大侠指点,如何突破七位限制
- java编程题 我是在不会java大家帮帮忙
- 如何打开后缀为.bin的文件?
- 关于RMI
- Linux 安装Jdk错误
- 这个表示的含义
http://topic.csdn.net/t/20060304/17/4592722.html
(>>>)“无符号”右移位运算符,它使用了“零扩展”:无论正负,都在高位插入0。这一运算符是C或C++没有的。
>>>:无符号右移位运算符,它使用了“零扩展”:无论正负,都在高位插入0。
再给个小例子,其实你可以自己写下的:
public class SimpleTest {
public static void main(String[] args) {
int value=16,value2=-16;
System.out.println(value+"有符号右移两位的值:"+(value>>2));
System.out.println(value2+"有符号右移两位的值:"+(value2>>2));
System.out.println(value+"无符号右移两位的值:"+(value>>>2));
System.out.println(value2+"无符号右移两位的值:"+(value2>>>2)); }}
运行结果:
16有符号右移两位的值:4
-16有符号右移两位的值:-4
16无符号右移两位的值:4
-16无符号右移两位的值:1073741820分析:可见,对于正数来说,这两个运算符是没有区别的,但是对负数来说,差别很大;这主要体现在右移后的最高位上补的是1或0,你可以自己再把二进制值打印出来看下
对于一个二进制数来说,第一位是它的符号位,正数为0,负数为1
算数右移时高位填充符号位,保证符号不变,而逻辑右移时高位填充0
对于左移则没有区别,无论是<<还是<<<都在低位填充0具体举例#7给出了
只有一种情况有区别。
就是负数右移。是吧?