Java: int[] 转 byte[]

记录一个int[] 转 byte[]的工具方法:

public static byte[] IntArrayToByteArray(int[] intArray) {
        if (intArray == null || intArray.length == 0) {
            return null;
        }

        ByteBuffer byteBuffer = ByteBuffer.allocate(intArray.length * 4);
        byteBuffer.order(ByteOrder.LITTLE_ENDIAN);

        IntBuffer intBuffer = byteBuffer.asIntBuffer();
        intBuffer.put(intArray);

        return byteBuffer.array();
    }

例:

int[] arr = {0x12345678, 0x00ABCDEF};

调用上述方法转换完成的结果为:

78 56 34 12 EF CD AB 00 

PS: 我这里使用的是小端格式,如果想要得到大端格式的结果,需要将红色code 修改成:  byteBuffer.order(ByteOrder.BIG_ENDIAN); 

over

原文地址:https://www.cnblogs.com/yongdaimi/p/14469893.html