【问题标题】:How to auto increment the size of an array in java如何在java中自动增加数组的大小
【发布时间】:2013-06-06 22:44:52
【问题描述】:

数组大小如何在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);

在此之后如何完成我的代码请帮助我

【问题讨论】:

  • 听起来您应该使用不同的数据结构。看看arraylist。
  • 没有老板跟我说只能这样实现
  • 也许他在测试你是否知道你是否知道arraylist :)

标签: java arrays multidimensional-array auto-increment


【解决方案1】:

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

How to increase string array size automatically or dynamically

【讨论】:

    【解决方案2】:

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

    【讨论】:

      【解决方案3】:

      使用List 满足此要求。您可以使用 ArrayList&lt;ArrayList&gt; 代替 2-dim 数组。 ArrayListList 接口的 Resizable-array 实现。

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

      【讨论】:

        【解决方案4】:

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

        List 接口的 Resizable-array 实现。

        【讨论】:

        • 对不起,我不想使用 ArrayList
        • 如果您想将数组用于可调整大小的数组,您最终将重新创建 arraylist 在“幕后”所做的事情(可能效率较低)。我真的会检查你老板不想要数组列表
        • 附言。你为什么要抛弃所有面向对象的性质并使用 2D 数组而不是 Person 对象的 1D 数组(每个对象都有一个 name 和 age 字段)。正如你现在所做的那样,你将年龄保存在一个字符串中,这让我非常难过
        • 是的,这就像使用台阶,当你有电梯时:)。
        • 可能是你的老板在测试你是否知道arraylist :)
        【解决方案5】:

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

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

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

        【讨论】:

        • 对于单人来说还可以,但是二维如何,如果我可以这样做,显示空指针 wxception
        猜你喜欢
        • 2022-01-13
        • 1970-01-01
        • 2020-05-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多