java中long,int,short与byte数组之间的转换

来源:互联网 发布:对大数据的不同解释 编辑:程序博客网 时间:2024/05/17 07:37
//long类型转成byte数组 
 
publicstaticbyte[] longToByte(long number){ 
       
long temp = number; 
       
byte[] b =newbyte[8]; 
       
for(int i =0; i < b.length; i++){ 
            b
[i]=newLong(temp &0xff).byteValue();// 
将最低位保存在最低位 
            temp
= temp >>8;// 向右移8位 
       
} 
       
return b; 
   
} 
    
   
//byte数组转成long 
   
publicstaticlong byteToLong(byte[] b){ 
       
long s =0; 
       
long s0 = b[0]&0xff;// 最低位 
       
long s1 = b[1]&0xff; 
       
long s2 = b[2]&0xff; 
       
long s3 = b[3]&0xff; 
       
long s4 = b[4]&0xff;// 最低位 
       
long s5 = b[5]&0xff; 
       
long s6 = b[6]&0xff; 
       
long s7 = b[7]&0xff; 
 
       
// s0不变 
        s1
<<=8; 
        s2
<<=16; 
        s3
<<=24; 
        s4
<<=8*4; 
        s5
<<=8*5; 
        s6
<<=8*6; 
        s7
<<=8*7; 
        s
= s0 | s1 | s2 | s3 | s4 | s5 | s6 | s7; 
       
return s; 
   
} 
 
/** 
     * 注释:int到字节数组的转换! 
     * 
     * @param number 
     * @return 
     */
 
   
publicstaticbyte[] intToByte(int number){ 
       
int temp = number; 
       
byte[] b =newbyte[4]; 
       
for(int i =0; i < b.length; i++){ 
            b
[i]=newInteger(temp &0xff).byteValue();// 
将最低位保存在最低位 
            temp
= temp >>8;// 向右移8位 
       
} 
       
return b; 
   
} 
 
   
/** 
     * 注释:字节数组到int的转换! 
     * 
     * @param b 
     * @return 
     */
 
   
publicstaticint byteToInt(byte[] b){ 
       
int s =0; 
       
int s0 = b[0]&0xff;// 最低位 
       
int s1 = b[1]&0xff; 
       
int s2 = b[2]&0xff; 
       
int s3 = b[3]&0xff; 
        s3
<<=24; 
        s2
<<=16; 
        s1
<<=8; 
        s
= s0 | s1 | s2 | s3; 
       
return s; 
   
} 
 
   
/** 
     * 注释:short到字节数组的转换! 
     * 
     * @param s 
     * @return 
     */
 
   
publicstaticbyte[] shortToByte(short number){ 
       
int temp = number; 
       
byte[] b =newbyte[2]; 
       
for(int i =0; i < b.length; i++){ 
            b
[i]=newInteger(temp &0xff).byteValue();// 
将最低位保存在最低位 
            temp
= temp >>8;// 向右移8位 
       
} 
       
return b; 
   
} 
 
   
/** 
     * 注释:字节数组到short的转换! 
     * 
     * @param b 
     * @return 
     */
 
   
publicstaticshort byteToShort(byte[] b){ 
       
short s =0; 
       
short s0 =(short)(b[0]&0xff);// 最低位 
       
short s1 =(short)(b[1]&0xff); 
        s1
<<=8; 
        s
=(short)(s0 | s1); 
       
return s; 
   
}