import java.util.Arrays; import java.util.Random; public class HomeWork5 { public static void main(String[] args) { Random r = new Random(); int[][] arr = new int[5][8]; for (int i = 0; i < arr.length; i++) { for (int j = 0; j < arr[i].length; j++) { arr[i][j] = r.nextInt(100) + 1; } } System.out.println("打印原二维数组:"); for (int[] a : arr) { for (int b : a) { System.out.print(b + "\t"); } System.out.println(); } int[] brr = oneArray(arr); System.out.println("打印二维数组转换的一维数组:"); for (int i = 0; i < arr.length * arr[0].length; i++) { System.out.print(brr[i] + "\t"); } //排序 Arrays.sort(brr, 0, arr.length * arr[0].length); System.out.println("\r"); System.out.println("打印重新排序的一维数组:"); for (int i = 0; i < arr.length * arr[0].length; i++) { System.out.print(brr[i] + "\t"); } System.out.println("\r"); System.out.println("新版二维数组:"); int[][] crr = twoArray(brr); for (int[] a : crr) { for (int b : a) { System.out.print(b + "\t"); } System.out.println(); } } public static int[] oneArray(int[][] arr) { int[] brr = new int[arr.length * arr[0].length]; int index = 0; for (int i = 0; i < arr.length; i++) { System.arraycopy(arr[i], 0, brr, index, arr[i].length); index += arr[i].length; } return brr; } public static int[][] twoArray(int[] arr) { int[][] brr = new int[5][8]; int index = 0; for (int i = 0; i <5; i++) { for (int j = 0; j < 8; j++) { brr[i][j] = arr[index]; index++; } } return brr; } }