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]);
}
}
}