-1

Javaで2次元配列をソートしようとしています。最初の列は許可の種類を説明する int で、2 番目の列はアプリケーションのカテゴリを説明する別の整数です。最初の列を並べ替え、2 番目の列はそのままにしたい。たとえば、パラメーターとして [0][0] を入力すると、そのカテゴリで最も使用されているアクセス許可が返されます。

私の悪い英語で申し訳ありませんが、あなたの助けに感謝します

4

2 に答える 2

2

使用Arrays#sort(T[],Comparator<? super T>)機能

      int array [][] = {{1,11},{2,34},{3,8},{8,4},{7,23}};

        java.util.Arrays.sort(array, new java.util.Comparator<int[]>() {
            public int compare(int[] a, int[] b) {
                return b[0] - a[0];
            }
        });
于 2012-11-07T16:31:27.760 に答える
0

お役に立てれば:

    class 2DcolumnComparator implements Comparator {
        private int columnToSortOn;

        2DcolumnComparator(int columnToSortOn) {
        this.columnToSortOn = columnToSortOn;
    }

    public int compare(Object o1, Object o2) {
     String[] row1 = (String[])o1;
     String[] row2 = (String[])o2;

     return row1[columnToSortOn].compareTo(row2[columnToSortOn]);
    }
   }
于 2012-11-07T16:29:43.080 に答える