java中合并多个byte数组
时间: 2023-09-05 10:10:38 浏览: 117
在Java中合并多个byte数组可以使用System.arraycopy()方法或者使用ByteArrayOutputStream类。
使用System.arraycopy()方法示例:
```java
public static byte[] mergeByteArrays(byte[]... byteArrays) {
int length = 0;
for (byte[] byteArray : byteArrays) {
length += byteArray.length;
}
byte[] result = new byte[length];
int destPos = 0;
for (byte[] byteArray : byteArrays) {
System.arraycopy(byteArray, 0, result, destPos, byteArray.length);
destPos += byteArray.length;
}
return result;
}
```
使用ByteArrayOutputStream类示例:
```java
public static byte[] mergeByteArrays(byte[]... byteArrays) {
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
for (byte[] byteArray : byteArrays) {
outputStream.write(byteArray, 0, byteArray.length);
}
byte[] result = outputStream.toByteArray();
return result;
}
```
这两种方式都可以实现多个byte数组的合并。区别在于第一种方式需要手动管理下标,而第二种方式则使用了Java提供的字节输出流,更加方便。
阅读全文