我刚接触多维数组,似乎无法解决这个问题:
我目前正在尝试创建一些代码,以增加多维数组的尺寸。目的是获取一个名为flat array的数组,并添加newDimensions。在我的测试中,创建了一个数组:[0,20,10,30],它是一个尺寸为(2,2)的数组,并且要添加newDimensionssize(2)。
现在我的下面代码创建了一个新的flatArray [0,0,10,10,5,5,15,15],但是我的问题是该测试未通过,因为它的预期值为[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;
}