对二维数组排序

不羁的心 提交于 2019-11-29 05:42:41

在这里插入图片描述在这里插入图片描述
Arrays.sort()不能对二维数组直接排序。需要把二维数组看成是”每个元素是一维数组的一维数组“,传入外比较器自定义比较规则。

import java.util.Arrays;
import java.util.Comparator;

public class RedBook {
    public static void main(String[] args) {
        int[][] arr = {{3,2},{1,1},{1,3},{2,2}};

        Arrays.sort(arr, new Comparator<int[]>() {
            @Override
            public int compare(int[] o1, int[] o2) {
                return o1[0] - o2[0];
            }
        });

        for (int i = 0; i < arr.length; ++i){
            for(int j = 0; j < arr[0].length; ++j)
                System.out.println(arr[i][j]);
        }
    }
}
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!