Java 增加多维数组的维数

Java 增加多维数组的维数,java,arrays,multidimensional-array,Java,Arrays,Multidimensional Array,我刚接触多维数组,似乎无法解决这个问题: 我目前正在尝试创建一些增加多维数组维数的代码。目的是获取一个名为flat array的数组,并添加新维度。在我的测试中,创建了一个数组:[0,20,10,30],它是一个维度(2,2)的数组,要添加newDimensionssize(2) 现在,我下面的代码创建了一个新的[0,0,10,10,5,5,15,15]flatArray,但我的问题是测试没有通过,因为它预期为[0,0,5,5,10,10,15,15] 我可能不了解嵌套数组是如何工作的,或者是否

我刚接触多维数组,似乎无法解决这个问题:

我目前正在尝试创建一些增加多维数组维数的代码。目的是获取一个名为flat array的数组,并添加新维度。在我的测试中,创建了一个数组:[0,20,10,30],它是一个维度(2,2)的数组,要添加newDimensionssize(2)

现在,我下面的代码创建了一个新的[0,0,10,10,5,5,15,15]flatArray,但我的问题是测试没有通过,因为它预期为[0,0,5,5,10,10,15,15]

我可能不了解嵌套数组是如何工作的,或者是否有其他有用的东西可以帮助我实现所需的结果

非常感谢您的帮助

@Override
public void addDimension(int newDimensionSize) {
    int[] arrayAddedDimensions = new int[flatArray.length * newDimensionSize];
    int arrayValue;
    int j = 0;
    int k = 0;

    for (int i = 0; (i < flatArray.length); i++) {
        arrayValue = flatArray[i];
        int newValue = (arrayValue / newDimensionSize);
        for (k = 0; (k < newDimensionSize); k++) {
                arrayAddedDimensions[j] = newValue;
                j++;
            }
    }
    flatArray = arrayAddedDimensions;
}
@覆盖
public void addDimension(int newDimensionSize){
int[]arrayAddedDimensions=新int[flatArray.length*newDimensionSize];
int数组值;
int j=0;
int k=0;
for(int i=0;(i
您所做的与尺寸无关。problem语句可能有状态维度及其自己的定义。所以问题是您希望数组在末尾排序?代码运行良好,如
0/2=0
20/2=10
10/2=5
30/2=15
。结果应该是一个嵌套的
数组吗?是的,在这方面都运行良好。看起来预期的数组的顺序略有不同,我想知道与多维数组相比,我在可视化平面数组时是否遇到了一些问题。我使用了数组排序,但删除了它,因为这不适合所有的测试用例。您可以使用1d数组来模拟多维数组--这就是您试图做的吗?