[b][/b]
遍历行,然后拷贝至一维数组中,性能稍微好点
[code="java"]
private static int[] unitTwoDimArray(int[][] src)
{
int row = src.length;
int col = src[0].length;
int[] dst = new int[row * col];
for (int i = 0; i < row; i++)
{
System.arraycopy(src[i], 0, dst, i * col, col);
}
return dst;
}
[/code]
你遍历一次 放到数组里不就行了
给个小例子:
[code="java"]
public class TestConvertArray {
public static void main(String[] args) {
//定义十行十列的二维数组
int[][] twoDegree = new int[10][10];
//简单初始化该二维数组
int a = 0;
for(int i=0;i<10;i++){
for(int j=0;j<10;j++){
twoDegree[i][j] = a++;
}
}
//调用二维转一维的方法
twoDegreeToOneDegree(twoDegree,10,10);
}
//二维转一维
private static void twoDegreeToOneDegree(int[][] twoDegree,int row,int col){
int[] oneDegree = new int[row*col];
int k = 0;
for(int i=0;i<row;i++){
for(int j=0;j<col;j++){
oneDegree[k] = twoDegree[i][j];
k++;
}
}
}
}
[/code]
nju_abc 的方法不错
[quote]nju_abc 的方法不错[/quote]
嗯,确实。