已采纳回答 / 菲尔活该
public class Coner1 {public static byte[]int2bytes(int id){byte[] arr=new byte[4];//创建一个数组,长度为四arr[0]=(byte)((int)id>>0*8 & 0xff);//0xff报错Oxff cannot be resolved to a variablearr[1]=(byte)((int)id>>1*8 & 0xff);arr[2]=(byte)((int)id>...
2016-06-17
最赞回答 / Airly
前面有一章是“按位与运算”,讲到&的一个特殊用法是用来取指定位数(假设8143为X,想要取X对应的某个位段,相应位段的值全部为1,其余位为0,即可得到指定位)0*8就是没有移,然后做按位与运算(&0xff),得到第一个低端位[解释下0x开头代表十六进制,F二进制代表1111,则0xff代表1111 1111]1*8就是像右移8位,那么舍弃掉右边的8位,就得到第二个低端位2*8就是像右移16位,那么舍弃掉右边的16位,就得到第三个低端位3*8就是像右移24位,那么舍弃掉右边的24位,就得到第...
2016-05-29
最赞回答 / zouppan
反码表示法规定:正数的反码与其原码相同;负数的反码是对其原码逐位取反,但符号位除外。如:原码10010= 反码11101 (10010,1为符号码,故为负)所以14的反码还是14.
2016-04-25
已采纳回答 / qq_云在风中_0
实际开发中用到的不多,但是要处理乱码的时候要用到,还有就是想成为高手,必须懂。int转换成2进制字节型数组说白了就是将一个整数变成2进制表示,从右到左按照每八位划分开一个字节,共四个字节,也就是一个索引位4的数组。例如:00000000 00000000 00000011 00110011表示成十进制就是819,这里我解释一下,int在java中是4字节存储,4个字节恰好是32(4*8=32)位、每个字节是8位,字节是计算机中存储的一个单位,用8位2进制数表示。将一个整数转化成2进制字符串可以用 Stri...
2016-04-11
已采纳回答 / Lynn丶Hung
二进制用补码进行运算。3的补码是00000011(注:最高位0表示为正数、若为1则表示为负数;正数的补码与原码、反码相同),1的补码是00000001;然后把这两个数相加(注:相加2进1)得到00000100(把它转化为原码还是00000100即为4)
2016-03-21