如何在java中自动增加数组的大小

时间:2013-06-11 06:51:32

标签: java arrays multidimensional-array auto-increment

如何在java程序中自动增加数组大小我的要求是“创建一个二维数组 sno,在第一个维度 名称,第二维年龄 所以,如果我通过sds,25 它应该被添加到数组[0] [sds,25] 数组应该继续递增“ 我的代码是这样的:

void values() throws IOException{for ( int row = i; row < len; row++ ){
            for ( int column = 1; column <= 1; column++ ){
                arrayValues[row][0] = String.valueOf(row+1);
                System.out.print("Enter "+(row+1)+" Name: ");
                String name = br.readLine();
                System.out.print("Enter "+(row+1)+" age: ");
                int age = Integer.parseInt(br.readLine());
                arrayValues[row][column]= name+","+age;
            }
void incrementSize() throws IOException{String[][] newArray = new String[arrayValues.length][];
    System.out.println(newArray.length);
String[][] t = Arrays.copyOf(arrayValues, newArray.length);

之后如何才能完成我的代码请帮帮我

5 个答案:

答案 0 :(得分:4)

我认为您的要求的最佳选择是ArrayList

  

List接口的可调整大小的数组实现。

答案 1 :(得分:1)

使用List来满足此要求。您可以使用ArrayList<ArrayList>代替2-dim数组。 ArrayList List接口的可调整大小的数组实现。

数组是一个容器对象,它包含单个类型的固定数量的值

答案 2 :(得分:1)

您必须创建一个新数组才能使大小更大,没有动态方法来增加现有数组。

这是一种可以创建新数组以增加大小的方法。

int[] a = new int[5];
// fill a
int[] b = Arrays.copyOf(a, 10);

答案 3 :(得分:0)

听起来你正在寻找一个动态增长的数据结构。你可以使用java集合框架工作中的list接口的实现。你可以使用ArrayList或Vectors。

答案 4 :(得分:0)

使用java.util.Arrays类是可能的。请参考以下链接获取答案。

How to increase string array size automatically or dynamically