[java]byte和byte[]与int之间的转换

时间:2022-02-10 15:03:33

1、byte与int转换
public static byte intToByte(int x) {  
return (byte) x;  
}  
public static int byteToInt(byte b) {  
//Java 总是把 byte 当做有符处理;我们可以通过将其和 0xFF 进行二进制与得到它的无符值
return b & 0xFF;  
}

2、byte[]与int转换
public static int byteArrayToInt(byte[] b) {  
return   b[3] & 0xFF |  
            (b[2] & 0xFF) << 8 |  
            (b[1] & 0xFF) << 16 |  
            (b[0] & 0xFF) << 24;  
}  
public static byte[] intToByteArray(int a) {  
return new byte[] {  
        (byte) ((a >> 24) & 0xFF),  
        (byte) ((a >> 16) & 0xFF),     
        (byte) ((a >> 8) & 0xFF),     
        (byte) (a & 0xFF)  
    };  
}