首先定义一个5X8的二维数组,然后使用随机数填充满。
借助Arrays的方法对二维数组进行排序。
参考思路:
先把二维数组使用System.arraycopy进行数组复制到一个一维数组
然后使用sort进行排序
最后再复制回到二维数组。
关于随机数
0-100的 随机整数的获取办法有多种,下面是参考办法之一:
import java.util.Arrays;
public class TwoDimenSort {
public static void main(String[] args) {
int xLen = 5;
int yLen = 8;
int[][] a = new int[xLen][yLen];
//使用随机数填充二维数组
for(int i=0;i<xLen;i++) {
for(int j=0;j<yLen;j++) {
a[i][j] = (int)(Math.random() * 100);
}
}
//复制二维数组到一维数组
int[] b = new int[xLen * yLen];
int k = 0;
for(int i=0;i<xLen;i++) {
for(int j=0;j<yLen;j++) {
b[k++] = a[i][j];
}
}
System.out.println("排序前:");
for(int i=0;i<xLen;i++) {
System.out.println(Arrays.toString(a[i]));
}
//调用Arrays中的sort方法
Arrays.sort(b);
//将排序后的值复制回二维数组
k = 0;
for(int i=0;i<xLen;i++) {
for(int j=0;j<yLen;j++) {
a[i][j] = b[k++];
}
}
System.out.println("排序后:");
for(int i=0;i<xLen;i++) {
System.out.println(Arrays.toString(a[i]));
}
}
}