第42天Arrays.sort 与 Collections.sort 应用 | 整形数组与集合的排序

Posted 执 梗

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第42天Arrays.sort 与 Collections.sort 应用 | 整形数组与集合的排序相关的知识,希望对你有一定的参考价值。

本文已收录于专栏

如何使用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]

 

以上是关于第42天Arrays.sort 与 Collections.sort 应用 | 整形数组与集合的排序的主要内容,如果未能解决你的问题,请参考以下文章

39-java中Arrays.sort 和 collections.sort()总结

使用 Arrays.sort() 对并行数组进行排序

Java中对数组升序排列用Arrays.sort( )方法,那降序排列用啥方法?

jdk8源码Arrays.sort插入排序,居然还可以成对插入

jdk8源码Arrays.sort插入排序,居然还可以成对插入

jdk8源码Arrays.sort插入排序

(c)2006-2024 SYSTEM All Rights Reserved IT常识