java二元数组排序
时间: 2023-08-29 08:10:15 浏览: 95
java数组排序
要对Java二维数组进行排序,可以使用Arrays.sort()方法,并重写Comparator比较器。有两种方式可以实现。
方式一:
```java
public static void main(String\[\] args) {
int\[\]\[\] points = {{10, 16}, {2, 8}, {1, 6}, {6, 12}};
// 对二维数组按照每行数组的第一个元素进行排序
Arrays.sort(points, new Comparator<int\[\]>() {
@Override
public int compare(int\[\] o1, int\[\] o2) {
// 按照从小到大排序
return o1\[0\] - o2\[0\];
}
});
for (int\[\] point : points) {
for (int i : point) {
System.out.print(i + " ");
}
System.out.println();
}
}
```
方式二:
```java
public static void main(String\[\] args) {
int\[\]\[\] points = {{10, 16}, {2, 8}, {1, 6}, {6, 12}};
// 对二维数组按照每行数组的第一个元素进行排序
Arrays.sort(points, (o1, o2) -> {
// 按照从小到大排序
return o1\[0\] - o2\[0\];
});
for (int\[\] point : points) {
for (int i : point) {
System.out.print(i + " ");
}
System.out.println();
}
}
```
这两种方式都可以实现对二维数组按照每行数组的第一个元素进行排序。\[1\]\[2\]其中,方式一使用了匿名内部类来实现Comparator比较器的重写,而方式二使用了Lambda表达式来简写Comparator比较器的重写。需要注意的是,Arrays.sort()方法只支持对一维数组进行排序,对于二维数组需要重写Comparator比较器来实现排序。\[3\]
#### 引用[.reference_title]
- *1* *2* *3* [Arrays.sort() 实现二维数组排序](https://blog.csdn.net/qq_37190972/article/details/110396357)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文