Java 二维数组如何先对行再对列排序?

一个二维整形数组,进行排序。先按行的大小排序,再按列的大小排序。
比如{1,3}{1,1}{4,2}{3,1}
排完就是
{1,1}
{1,3}
{3,1}
{4,2}

第1个回答  2016-12-28

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

        for(int i = 0 ; i<a.length; i++){
            for(int j = i ; j <a.length  ;j++){
                if(a[i][0] > a[j][0] || (a[i][0] == a[j][0] && a[i][1] > a[j][1])){
                    int temp = a[i][0];
                    a[i][0] = a[j][0];
                    a[j][0] = temp;

                    temp = a[i][1];
                    a[i][1] = a[j][1];
                    a[j][1] = temp;
                }
            }
        }
        for(int i = 0 ;i<a.length ;i++){
            System.out.println(a[i][0]+","+a[i][1]);
        }
    }
}

本回答被网友采纳