例如String ss[][]=new String[row][2];其中如果row的值变大了,如何实现数组的增长,原来的内容还要,谢谢解答

解决方案 »

  1.   

    for example
    String ss[][]=new String[row][2];
    row += 10;
    String[][] tss = new String[row][2];
    for (int i=0; i<ss.length; i++) {
        tss[i] = Arrays.copy(ss[i], ss[i].length);
    }
    ss = tss;
      

  2.   

    给个例子你参考下
    public class TestDArray
    {
    public static void main(String[] g)
            {
         int[][] a = new int[4][];
    a[0] = new int[1];
    a[1] = new int[2];
    a[2] = new int[3];
    a[3] = new int[4]; int k = 0;
    for (int i = 0; i < a.length; i++)
    {
    for (int j = 0; j < a[i].length; j++)
    {
    a[i][j] = k++; 
    }
    } for (int i = 0; i < a.length; i++)
    {
    for (int j = 0; j < a[i].length; j++)
    {
    System.out.print(a[i][j] + " ");
    }
    System.out.println();
    }
            }

    }
      

  3.   

    1楼那个最后一句ss=tss;是什么意思?
      

  4.   

    String ss[][]=new String[row][2];
    row += 10;
    String[][] tss = new String[row][2]; 
    for (int i=0; i<ss.length; i++) {
        tss[i] = Arrays.copy(ss[i], ss[i].length);
    }
    ss = tss; //让ss指向tss所引用的数组对象,这样,ss就指向了新的长度的数组对象,原来ss所引用的对象就可以被回收了