Java中两个或多个byte数组合并及int类型转数组

Java中两个或多个byte数组合并及int类型转数组

  // 用list好处是可以未知多个?
    public static byte[] test(List<byte[]> values) {
        int lengthByte = 0;
        for (byte[] value : values) {
            lengthByte += value.length;
        }
        byte[] allBytes = new byte[lengthByte];
        int countLength = 0;
        for (byte[] b : values) {
            System.arraycopy(b, 0, allBytes, countLength, b.length);
            countLength += b.length;
        }
        return allBytes;
    }

感觉用list做参数更方便一些,可以自己造一个list,然后去调用这个合并算法

               // byteArray(int i) 会返回一个byte[]
                List<byte[]> list = new ArrayList<>();
                list.add(byteArray(1));
                list.add(byteArray(2));
                list.add(byteArray(3));
                list.add(byteArray(4));
                list.add(byteArray(5));
                list.add(byteArray(6));
                list.add(byteArray(7));
                list.add(byteArray(8));
                list.add(byteArray(9));
                list.add(byteArray(10));
                list.add(byteArray(11));
                byte[] bytes = ByteUtil.test(list);

原文地址:https://www.cnblogs.com/myfrank/p/15038707.html