Java 里面能用数组存数组吗?能存的话,改怎么存?
例如:byte[] d1 = new byte[10];
      byte[] d2 = new byte[11];
      byte[] d3 = new byte[12];我想把d1,d2,d3存在一个数组里,能成吗?
这三个存集合可以

解决方案 »

  1.   


    byte[][] d = new byte[3][];
    d[0] = new byte[10];
    d[1] = new byte[11];
    d[2] = new byte[12];
      

  2.   

    就是数组的数组,提供如下两种方式:import java.util.Arrays;public class Test { public static void main(String[] args) {
    byte[] d1 = new byte[10];
    byte[] d2 = new byte[11];
    byte[] d3 = new byte[12];

    byte[][] ba1 = new byte[][]{d1, d2, d3};
    byte[][] ba2 = new byte[3][];
    ba2[0] = d1;
    ba2[1] = d2;
    ba2[2] = d3;

    System.out.println(Arrays.toString(ba1));
    System.out.println(Arrays.toString(ba2));
    }
    }
      

  3.   

    如果想把三个数组的内容放到一个数组中,可以通过数组复制方法
    byte[] d1 = new byte[10];
      byte[] d2 = new byte[11];
      byte[] d3 = new byte[12];
      byte[] d4=new byte[33];
      System.copyArrays(d1,0,d4,0,d1.length);
      System.copyArrays(d2,0,d4,10,d2.length);
      System.copyArrays(d3,0,d4,21,d3.length);