Java 如何将一维数组拆分为具有特定列大小的二维数组?
我有一个一维数组Java 如何将一维数组拆分为具有特定列大小的二维数组?,java,arrays,Java,Arrays,我有一个一维数组arr1D[I],我想把它转换成二维数组arr2D[I][j],其中二维数组中的列大小应该是512,行大小可以是任何东西。例如,如果我有一个大小为arr1D[1024]的1D数组,那么相应的二维数组应该是arr2D[2][512] 您可以通过以下方式轻松创建它 yourtype arr2D[][]=新建yourtype[arr1D.length/2][512]//yourtype:=[int,float,…] 现在一切都取决于您,您将如何在arr2d中复制arr1d的那些元素,两
arr1D[I]
,我想把它转换成二维数组arr2D[I][j]
,其中二维数组中的列大小应该是512,行大小可以是任何东西。例如,如果我有一个大小为arr1D[1024]
的1D数组,那么相应的二维数组应该是arr2D[2][512]
您可以通过以下方式轻松创建它
yourtype arr2D[][]=新建yourtype[arr1D.length/2][512]
//yourtype:=[int,float,…]
现在一切都取决于您,您将如何在
arr2d
中复制arr1d
的那些元素,两个forloop如何复制它们:
2darray[][];
size1d = 1024;
num_colums = 512;
num_rows = size1d/num_colums;
for(i = 0; i < num_rows; i++){
for(j = 0; j < num_colums; j++){
2darray[i][j] = 1darray[i*num_colums+j];
}
}
2darray[];
尺寸1d=1024;
柱数=512;
行数=大小1d/列数;
对于(i=0;i
这只是伪代码,但如果使用一些tweek,它应该可以工作;希望有帮助:-)
int len=arr1D.length();
如果(len%512!=0))
len=len/512+1;
其他的
len=len/512;
int arr2D=新的int[len][512];
int k=0;
对于(int i=0;i