gpt4 book ai didi

java - 如何组合两个字节数组

转载 作者:IT老高 更新时间:2023-10-28 20:23:18 24 4
gpt4 key购买 nike

我有两个字节数组,我想知道如何将一个添加到另一个或组合它们以形成一个新的字节数组。

最佳答案

您只是想连接两个 byte 数组?

byte[] one = getBytesForOne();
byte[] two = getBytesForTwo();
byte[] combined = new byte[one.length + two.length];

for (int i = 0; i < combined.length; ++i)
{
combined[i] = i < one.length ? one[i] : two[i - one.length];
}

或者你可以使用 System.arraycopy:

byte[] one = getBytesForOne();
byte[] two = getBytesForTwo();
byte[] combined = new byte[one.length + two.length];

System.arraycopy(one,0,combined,0 ,one.length);
System.arraycopy(two,0,combined,one.length,two.length);

或者您可以只使用 List 来完成这项工作:

byte[] one = getBytesForOne();
byte[] two = getBytesForTwo();

List<Byte> list = new ArrayList<Byte>(Arrays.<Byte>asList(one));
list.addAll(Arrays.<Byte>asList(two));

byte[] combined = list.toArray(new byte[list.size()]);

或者您可以简单地使用 ByteBuffer 来添加许多数组。

byte[] allByteArray = new byte[one.length + two.length + three.length];

ByteBuffer buff = ByteBuffer.wrap(allByteArray);
buff.put(one);
buff.put(two);
buff.put(three);

byte[] combined = buff.array();

关于java - 如何组合两个字节数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5683486/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com