如何在java中合并2个二进制数组

时间:2014-12-17 05:05:03

标签: java bytearray

我有这样的2字节数组:

byte a[i]=1;
byte b[i]=0;

我想合并它,以便输出结果变为" 10"。我尝试使用arraycopy并创建新的输出

byte[] output=a.length+b.length;

但它仍然没有像我期望的那样工作。有谁知道如何解决它?

3 个答案:

答案 0 :(得分:2)

试试这个。

byte[] first = getFirstBytes();
byte[] second = getSecondBytes();

List<Byte> listOfBytes = new ArrayList<Byte>(Arrays.<Byte>asList(first));
listOfBytes.addAll(Arrays.<Byte>asList(second));

byte[] combinedByte = listOfBytes.toArray(new byte[listOfBytes.size()]);

答案 1 :(得分:1)

试试这个。

byte a[i] = 1;
byte b[i] = 0;

byte[] output = new byte[a.length + b.length];

for(int i = 0 ; i < output.length ; ++i)
{
    if(i < a.length) output[i] = a[i];
    else output[i] = b[i - a.length];
}

答案 2 :(得分:1)

试试这个

     byte[] first = {1,2,4,56,6};
     byte[] second = {4,5,7,9,2};
     byte[] merged = new byte[first.length+second.length];

     System.arraycopy(first,0,merged,0,first.length);
     System.arraycopy(second,0,merged,first.length,second.length);
for(int i=0; i<merged.length;i++)
{
    System.out.println(merged[i]);
}