对二维数组进行排序:
- 按照子数组的第一个元素升序排列
int[][] points = {{2, 5}, {3, 4}, {1, 2}};
Arrays.sort(points, new Comparator() {
@Override
public int compare(int[] o1, int[] o2) {
if (o1[0] > o2[0]) {
return 1;
} else if (o1[0] < o2[0]) {
return -1;
} else {
return 0;
}
}
});
排序之后如下图
- 按照子数组第二个元素的升序排列(lambda表达式)
int[][] points = {{2, 5}, {3, 4}, {1, 2}};
Arrays.sort(points, ((o1, o2) -> o1[1] > o2[1] ? 1 : -1));
排序之后如下图



