Как мне перейти на преобразование следующих 1d массивов в 2d массивы? Я немного смущен при работе с 2d массивами.Измените массив 1d на массив 2d в java
[100, 101, 102, 200, 201, 202, 300, 301, 302] [232, 123, 102, 200, 321, 202, 300, 301, 302]
Как мне перейти на преобразование следующих 1d массивов в 2d массивы? Я немного смущен при работе с 2d массивами.Измените массив 1d на массив 2d в java
[100, 101, 102, 200, 201, 202, 300, 301, 302] [232, 123, 102, 200, 321, 202, 300, 301, 302]
Вы можете попробовать это: 2D Array
ничего просто массив массивов, так что вы можете поместить эти два массива в 2D массив, каждый элемент 2D массива является массивом.
int[] arr1 = {100, 101, 102, 200, 201, 202, 300, 301, 302};
int[] arr2 = {232, 123, 102, 200, 321, 202, 300, 301, 302};
int[][] array2D = new int[2][];
array2D[0] = arr1;
array2D[1] = arr2;
Другим способом было бы создать 2D-массив с желаемыми размерами, а затем использовать внешний и внутренний цикл для передачи значений. Например:
int k = 0
//array declarations
for (int i = 0...)
for (int j = 0...)
if (k < array1D.length)
array2D[i][j] = array1D[k];
k++
int[] x = {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16};
int [][]z = new int[4][4];
for (int i = 0, k=0; i < 4; i++)
for (int jl = 0; jl < 4; jl++)
z[i][jl] = x[k++];
for(int i=0;i<4;i++)
{
System.out.println();
for(int jl=0;jl<4;jl++)
{
System.out.print(z[i][jl]+" ");
}
}
Надеется, что вы получили ответ на ваш problem.Happy кодирования