如何使用Arrays.sort()对二维数组排序
Posted supremeboy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用Arrays.sort()对二维数组排序相关的知识,希望对你有一定的参考价值。
直接上代码:
按照第一维排序:
public static void main(String[] args){ int[][] nums=new int[][]{{1,3},{1,2},{4,5},{3,7}}; //方法一 Arrays.sort(nums,new Comparator<int[]>(){ public int compare(int[] a,int[] b){ if(a[0]==b[0]){ return a[1]-b[1]; }else{ return a[0]-b[0]; } } }); //方法二 /*Arrays.sort(nums,(a,b)->a[0]-b[0]);*/ for (int[] num : nums) { System.out.println(Arrays.toString(num)); } }
结果:
[1, 2] [1, 3] [3, 7] [4, 5]
按照第二维排序:
public static void main(String[] args){ int[][] nums=new int[][]{{1,3},{1,2},{4,5},{3,7}}; //方法一 Arrays.sort(nums,new Comparator<int[]>(){ public int compare(int[] a,int[] b){ if(a[1]==b[1]){ return a[0]-b[0]; }else{ return a[1]-b[1]; } } }); //方法二 /*Arrays.sort(nums,(a,b)->a[1]-b[1]);*/ for (int[] num : nums) { System.out.println(Arrays.toString(num)); } }
结果:
[1, 2] [1, 3] [4, 5] [3, 7]
以上是关于如何使用Arrays.sort()对二维数组排序的主要内容,如果未能解决你的问题,请参考以下文章