java语言中的int和byte[]相互转换
/**
* byte数组转为int类型的数字
* @param b 传入的byte数组
* @return
*/
public static int byteArrayToInt(byte[] b) {
int n = 0;
for (int i = 0, j = b.length; i < b.length; i++, j--) {
if (i <= 3)
n |= (b[j - 1] & 0xff) << (i * 8);
}
return n;
}
/**
* int类型的数字转为byte数组
* @param n 传入的int
* @return
*/
public static byte[] intToByteArray(int n) {
/* byte 0000 0000
* short 0000 0000 0000 0000
* int 0000 0000 0000 0000 0000 0000 0000 0000
*/
byte[] b = new byte[4];
for (int i = 3, j = 0; i >= 0; i--, j++) {
b[j] = (byte) ((n >> (i * 8)) & 0xff);
}
return b;
}