欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

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

结果如下:
Java中二维数组按字典排序(即,按第一列排序)
还有一种方式就是转成字符串数组,然后用Arrays.sort()方法排序,但是这样还要转回来,非常麻烦。不如这样直接排序