package tao.leetcode;
import java.util.*;
/**
* Created by Tao on 2017/7/30.
*/
public class MyLeetcode {
public static void main(String[] args) {
int[][] people = {{7,0}, {4,4}, {7,1}, {5,0}, {6,1}, {5,2}};
final int[] arOrders = {1,0};
Arrays.sort(people, new Comparator<Object>() {
public int compare(Object oObjectA, Object oObjectB) {
int[] arTempOne = (int[])oObjectA;
int[] arTempTwo = (int[])oObjectB;
for (int i = 0; i < arOrders.length; i++) {
int k = arOrders[i];
if (arTempOne[k] > arTempTwo[k]) {
return 1;
}
else if (arTempOne[k] < arTempTwo[k]) {
return -1;
}
else {
continue;
}
}
return 0;
}
});
for (int i = 0; i < people.length; i++) {
for (int j = 0; j < people[0].length; j++) {
System.out.print(people[i][j] + " ");
}
System.out.println();
}
}
}
output:
5 0
7 0
6 1
7 1
5 2
4 4
其中arOrders[]控制排序列的顺序
Arrays.sort(people, new Comparator<int[]>() {
public int compare(int[] a, int[] b) {
if (b[0] == a[0]) return a[1] - b[1]; //第二列由大到小排列
return b[0] - a[0]; ////第一列由大到小排列
}
}`