Java二维数组排序

Java二维数组排序

  • Java二维数组排序

Java二维数组排序

关于Java二维数组的排序方法之一是把二维数组放进一维数组然后试用版Arrays.sort();进行排序,排序结束后再把一维数组内容重新写入二维数组内,代码实现如下:

为了方便,我在这里使用了随机数生成方法Math.random()进行随机数生成,依次写入二维数组内:

import java.util.*;
public class P11{
	public static void main(String[] args){
		int[][] arr=new int[5][5];
		for(int i=0;i<arr.length;i++){
			for (int j=0;j<arr[i].length;j++){//生成随机数【100-1000】
				arr[i][j]=(int)(Math.random()*(1000-100+1)+100);
			}
		}
		for(int i=0;i<arr.length;i++){
			System.out.println(Arrays.toString(arr[i]));
		}
		System.out.println();
		for(int i=0;i<arr.length;i++){
			Arrays.sort(arr[i]);
		}
		for(int i=0;i<arr.length;i++){
			System.out.println(Arrays.toString(arr[i]));
		}
		int[] temp=new int[25];
		int k=0;
		for(int i=0;i<arr.length;i++){
			for(int j=0;j<arr[i].length;j++){
				temp[k]=arr[i][j];
				k++;
			}
		}
		System.out.println();
		for(int x:temp){
			System.out.print(x+" ");
		}
		Arrays.sort(temp);
		System.out.println();
		for(int x:temp){
			System.out.print(x+" ");
		}
		k=-1;
		for(int i=0;i<arr.length;i++){
			for(int j=0;j<arr[i].length;j++){
				k++;
				arr[i][j]=temp[k];
			}
		}
		System.out.println();
		System.out.println();
		for(int i=0;i<arr.length;i++){
			System.out.println(Arrays.toString(arr[i]));
		}
	}
}

因为使用了随机数生成的数组内容,所以每次运行数组内容都不尽相同,本次运行结果如下:

Java二维数组排序_第1张图片

你可能感兴趣的:(JavaSE,数组操作,排序)