我需要一個多維數組,並壓平,這樣,如果陣列的樣子:拼合2D或3D陣列中的Java
[1,2,3]
[4,5,6]
然後將其轉化爲:
[1,2,3,4,5,6]
我也需要適應3D陣列並將它們弄平。
這裏是我這麼遠......
class ArrayOperations {
private int[] postFlattenedArray;
public ArrayOperations {
flattenedArray = new int[arrayDimensions[0]];
// arrayDimesnsions of 3,4 is a a 3x4 array; 3,4,5 is a 3x4x5 array
//set up ints to hold total size and dimensionality of array
int prod = 1
int dimensions = 0;
newArray = new int[prod - 1];
for (int i: arrayDimensions) {
prod = prod * i;
dimensions += 1;
}
int k = 0;
for (int i: arrayDimensions){
for (int j = 0; j <= i; j++){
newArray[k++] = flattenedArray[j][0][0]
}
}
}
我知道我需要運行一些嵌套的for循環,但我有很難理解我怎麼會爲不同的陣列尺寸做到這一點。所以如果數組有尺寸; 3,5,6然後我不知道如何運行一個循環,使其遍歷像:
[1..4][0][0], [0][1..5][0], [0][0][1..6]