int 怎么转成byte数组 java

可以通过以下两种方法将 int 转换为字节数组:使用 bytearrayoutputstream:将整数写入 bytearrayoutputstream,并将其转换为字节数组。使用 bytebuffer:分配一个 4 字节的 bytebuffer,并将其写入整数。

int 怎么转成byte数组 java

如何将 int 类型转换为字节数组(Java)

int 类型转换为字节数组是一个常见的任务,特别是在网络编程和数据处理中。Java 提供了简单的方法来实现此转换。

方法 1:使用 ByteOutputStream

import java.io.ByteArrayOutputStream;
import java.io.IOException;

public class IntToByteArray {

    public static byte[] intToBytes(int value) {
        ByteArrayOutputStream out = new ByteArrayOutputStream();
        try {
            out.write(value >> 24);
            out.write(value >> 16);
            out.write(value >> 8);
            out.write(value);
        } catch (IOException e) {
            e.printStackTrace();
        }
        return out.toByteArray();
    }

    public static void main(String[] args) {
        int num = 123456;
        byte[] bytes = intToBytes(num);
        System.out.println("字节数组:");
        for (byte b : bytes) {
            System.out.print(b + " ");
        }
    }
}

这个方法通过 ByteArrayOutputStream 来写入一个 4 字节的整数,并将其转换为字节数组。

方法 2:使用 ByteBuffer

import java.nio.ByteBuffer;

public class IntToByteArray {

    public static byte[] intToBytes(int value) {
        ByteBuffer buff = ByteBuffer.allocate(4);
        buff.putInt(value);
        return buff.array();
    }

    public static void main(String[] args) {
        int num = 123456;
        byte[] bytes = intToBytes(num);
        System.out.println("字节数组:");
        for (byte b : bytes) {
            System.out.print(b + " ");
        }
    }
}

这个方法使用 ByteBuffer 来分配一个 4 字节的缓冲区,并将其写入一个整数。

结果:

上述代码将输出以下字节数组,表示整数 123456:

12 0 -72 -128

以上就是int 怎么转成byte数组 java的详细内容,更多请关注硕下网其它相关文章!