首先你要搞清楚int是32位的,byte是8位的
所以上面用byte[4]来存储一个int的值一个byte,也就是byte数组里面的元素和)xFF来求&(与)
目的是得到一个8位的2进制数<<在运算层面上看是把一个数扩大2的8次方,在这里其实就是把原来的8位二进制熟左移8位
然后右边补0,构成一个16位的二进制数
再之后是一个|(或)运算,其实就是把原来的16进制的右边8位0用或的那个8位二进制数来代替
这样就得到了一个新的16位二进制数,然后在反复这样的工作就得到了一个整形的总共32位而进制数不知道楼主有没有看明白。我的表达能力有限补充一下
任何数和0Xff求&其实就是得到那个数的本身,不过最后可以填满8位数
任何一个数和0x00求|也是得到本来的数,
上面就是通过这样连接2个8进制数的
所以上面用byte[4]来存储一个int的值一个byte,也就是byte数组里面的元素和)xFF来求&(与)
目的是得到一个8位的2进制数<<在运算层面上看是把一个数扩大2的8次方,在这里其实就是把原来的8位二进制熟左移8位
然后右边补0,构成一个16位的二进制数
再之后是一个|(或)运算,其实就是把原来的16进制的右边8位0用或的那个8位二进制数来代替
这样就得到了一个新的16位二进制数,然后在反复这样的工作就得到了一个整形的总共32位而进制数不知道楼主有没有看明白。我的表达能力有限补充一下
任何数和0Xff求&其实就是得到那个数的本身,不过最后可以填满8位数
任何一个数和0x00求|也是得到本来的数,
上面就是通过这样连接2个8进制数的
解决方案 »
- 请教个问题,如何查看String对象的地址!!!!小弟穷人,望大侠帮助
- 输入输出流的问题
- System.out.println(6^3)
- 只有当变量身份是“Class内的成员”时,JAVA才会初始化这个变量
- 拿JC运行提示说是找不到符号,帮个忙吧,小问题
- 接口与类多对一的关系,如何解决和应用!?!??
- 关于套接字变成中流的问题
- 请问用到swing的application编译成脱离jre的exe文件,用什么工具可以做到只有几百K Byte呢?
- 请问如何使编译成功的.class统一保存到一个特定的文件夹里?
- NT4.0下的字符编码问题,高分求救
- 向指定URL(asp或jsp)提交数据,并取得其页面内容.百分请教
- 面试题提问了,基础
a & 0xff --->10101010 (定义为b)
b << 8 ----->10101010000000 (定义为c,16位2进制数)
定义byte d=01010101,
c | d---->1010101001010101
上面的结果就是把a和d连接成一个16位的数了而上面的代码就是这样一直操作
最终得到32位