Java中byte[]与int之间的转化

来源:互联网 发布:淘宝只能开一个店铺 编辑:程序博客网 时间:2024/04/29 20:00

JAVA基于位移的 int类型和tyte[]之间转换

 

[java] view plaincopy
  1. /** 
  2.  * 基于位移的int转化成byte[] 
  3.  * @param int  number 
  4.  * @return byte[] 
  5.  */  
  6.   
  7. public static byte[] intToByte(int number) {  
  8.     byte[] abyte = new byte[4];  
  9.     // "&" 与(AND),对两个整型操作数中对应位执行布尔代数,两个位都为1时输出1,否则0。  
  10.     abyte[0] = (byte) (0xff & number);  
  11.     // ">>"右移位,若为正数则高位补0,若为负数则高位补1  
  12.     abyte[1] = (byte) ((0xff00 & number) >> 8);  
  13.     abyte[2] = (byte) ((0xff0000 & number) >> 16);  
  14.     abyte[3] = (byte) ((0xff000000 & number) >> 24);  
  15.     return abyte;  
  16. }  
  17.   
  18. /** 
  19.  *基于位移的 byte[]转化成int 
  20.  * @param byte[] bytes 
  21.  * @return int  number 
  22.  */  
  23.   
  24. public static int bytesToInt(byte[] bytes) {  
  25.     int number = bytes[0] & 0xFF;  
  26.     // "|="按位或赋值。  
  27.     number |= ((bytes[1] << 8) & 0xFF00);  
  28.     number |= ((bytes[2] << 16) & 0xFF0000);  
  29.     number |= ((bytes[3] << 24) & 0xFF000000);  
  30.     return number;  
  31. }  

 

JAVA 基于arraycopy合并两个byte[] 数组

 

[java] view plaincopy
  1. /** 
  2.  * 基于arraycopy合并两个byte[] 数组 
  3.  * @param byte[]  bytes1 
  4.  * @param byte[]  bytes2 
  5.  * @return   byte[]   bytes3  
  6.  */  
  7.     public   byte[]   combineTowBytes(byte[] bytes1,byte[] bytes2){      
  8.         byte[] bytes3 = new byte[bytes1.length+bytes2.length];  
  9.           System.arraycopy(bytes1,0,bytes3,0,bytes1.length);  
  10.           System.arraycopy(bytes2,0,bytes3,bytes1.length,bytes2.length);  
  11.           return bytes3 ;  
  12.     }  
0 0
原创粉丝点击