请问:
int nCount = 10;
(byte)(nCount >>> 24);
>>>什么意思?
int nCount = 10;
(byte)(nCount >>> 24);
>>>什么意思?
解决方案 »
- socket的问题 为什么通过socket发送的数据有的时候客户端接收不到,有的时候接收得到
- 为什么不能直接new HashMap<key, value>().put(key, value)???
- 初次写java正则表达式,有点晕,小问题谁来看看
- 外行求助--大型机
- 我的zip文件是用winrar压缩的,里面含有中文文件与中文目录。使用Java的zip压内的api去解压时,发生不能读取的中文的错误。请问谁知道怎
- 把Checkboxgroup改成可复选的Checkbox
- 有关rsa的privateKey问题,已经调了2天了
- 请问SCJP考试培训,哪儿比较好.
- Win2000下汉字显示的问题
- 请教问题:JDK怎样设置?
- 一个简单又很复杂的问题,不知道JVM如何处理的,请教高手
- java 操作符问题
若对char,byte或者short进行移位处理,那么在移位进行之前,它们会自动转换成一个int。只有右侧的5个低位才会用到。这样可防止我们在一个int数里移动不切实际的位数。若对一个long值进行处理,最后得到的结果也是long。此时只会用到右侧的6个低位,防止移动超过long值里现成的位数。但在进行“无符号”右移位时,也可能遇到一个问题。若对byte或short值进行右移位运算,得到的可能不是正确的结果(Java 1.0和Java 1.1特别突出)。它们会自动转换成int类型,并进行右移位。但“零扩展”不会发生,所以在那些情况下会得到-1的结果。
b1=(byte)(nCount >>> 24) //取得整数nCount的高字节,因为int是4字节,4*8=32位