字节数组与整数的相互转化

时间:2023-01-12 07:34:56

在工作的一些项目中,经常用到字节数组的整数的相互转化,现总结如下:

package java.util;

/**
* 数据工具类
*/
public class DataUtil {

/**
* 将整数转换成字节数组
*/
public static byte[] int2ByteArr(int i){
byte[] bytes = new byte[4] ;
bytes[0] = (byte)(i >> 24) ;
bytes[1] = (byte)(i >> 16) ;
bytes[2] = (byte)(i >> 8) ;
bytes[3] = (byte)(i >> 0) ;
return bytes ;
}

/**
* 将字节数组转换成整数
*/
public static int byteArr2Int(byte[] arr){
return (arr[0] & 0xff) << 24
| (arr[1] & 0xff) << 16
| (arr[2] & 0xff) << 8
| (arr[3] & 0xff) << 0 ;
}
}


测试:

@Test
public void test11() throws Exception {
int i = 255 ;
byte[] bytes = DataUtil.int2ByteArr(i);
System.out.println(DataUtil.byteArr2Int(bytes));
}