二维数组的排序java
时间: 2023-12-08 16:37:55 浏览: 121
二维数组的排序
以下是Java中对二维数组进行排序的方法:
1.使用Arrays.sort()方法,该方法可以对任何类型的数组进行排序,包括二维数组。但是,需要使用Comparator接口来指定排序规则。例如,如果要按第一列元素升序排序,则可以使用以下代码:
```java
Arrays.sort(arr, new Comparator<int[]>() {
@Override
public int compare(int[] o1, int[] o2) {
return o1[0] - o2[0];
}
});
```
2.使用lambda表达式实现Comparator接口,可以使代码更加简洁。例如,如果要按第一列元素升序排序,则可以使用以下代码:
```java
Arrays.sort(arr, (e1, e2) -> (e1[0] - e2[0]));
```
3.如果需要按多个列进行排序,则可以在Comparator接口的compare()方法中添加更多的比较条件。例如,如果要先按第一列元素升序排序,如果第一列相等再按第二列元素升序,则可以使用以下代码:
```java
Arrays.sort(arr, (e1, e2) -> (e1[0] == e2[0] ? (e1[1] - e2[1]) : (e1[0] - e2[0])));
```
注意:以上代码中的arr是一个二维数组,每个元素是一个一维数组。
阅读全文