您现在的位置:首页 --> 查看专题: 与运算
Java中的一个byte,其范围是-128~127的,而Integer.toHexString的参数本来是int,如果不进行&0xff,那么当一个byte会转换成int时,对于负数,会做位扩展,举例来说,一个byte的-1(即0xff),会被转换成int的-1(即0xffffffff),那么转化出的结果就不是我们想要的了。
而0xff默认是整形,所以,一个byte跟0xff相与会先将那个byte转化成整形运算,这样,结果中的高的24个比特就总会被清0,于是结果总是我们想要的。
[ 共1篇文章 ][ 第1页/共1页 ][ 1 ]
近3天十大热文
-
[61] memory prefetch浅析
-
[56] 转载:cassandra读写性能原理分析
-
[51] 深入浅出cassandra 4 数据一致性问
-
[44] MySQL半同步存在的问题
-
[41] 《web前端最佳实践》—高维护性css
-
[40] 获取Dom元素的X/Y坐标
-
[38] 字符引用和空白字符
-
[38] javascript插入样式
-
[35] 基本排序算法的PHP实现
-
[35] MySQL vs NoSQL 效率与成本之争
赞助商广告