Java中二维数组按字典排序(即,按第一列排序)
程序员文章站
2022-05-26 23:53:57
...
如题,废话少说,直接上代码:
import java.util.Arrays;
import java.util.Scanner;
public class T_17 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int[][] a = new int[n][3];
for (int i = 0; i < n; i++) {
a[i][0] = sc.nextInt();
a[i][1] = sc.nextInt();
a[i][2] = sc.nextInt();
}
// 以第一列排序
Arrays.sort(a, (e1, e2) -> e1[1] - e2[1]);
// 这样排序二维数组会报错
// Arrays.sort(a);
for (int i = 0; i < n; i++) {
System.out.printf("%d %d %d\n", a[i][0], a[i][1], a[i][2]);
}
}
}
结果如下:
还有一种方式就是转成字符串数组,然后用Arrays.sort()
方法排序,但是这样还要转回来,非常麻烦。不如这样直接排序
上一篇: C语言求某串字符串中数字的个数
下一篇: 二维字符数组按长度排序