首先定义一个5X8的二维数组,然后使用随机数填充满。
借助Arrays的方法对二维数组进行排序。
参考思路:
先把二维数组使用System.arraycopy进行数组复制到一个一维数组
然后使用sort进行排序
最后再复制回到二维数组。
import java.util.Arrays;
public class HelloWorld {
public static void main(String[] args){
int[][] a = new int[5][8];
int[] b = new int[40];
for (int i=0;i<5;i++){
for (int j=0;j<8;j++){
a[i][j] = (int)(Math.random()*100);
}
}
System.out.println("原二维数组为:"+Arrays.deepToString(a));
int x = 0;
for (int i=0;i<a.length;i++){
System.arraycopy(a[i],0,b,x,a[i].length);
x += a[i].length;
}
Arrays.sort(b);
// System.out.println(Arrays.toString(b));
int y = 0;
for (int i=0;i<a.length;i++){
System.arraycopy(b,y,a[i],0,a[i].length);
y += a[i].length;
}
System.out.println("排序后的二维数组为:"+Arrays.deepToString(a));
}
}