gpt4 book ai didi

java - 在java中按字母顺序排列二维数组

转载 作者:行者123 更新时间:2023-12-01 15:33:18 27 4
gpt4 key购买 nike

我有一个二维数组,每行包含名字、姓氏和第三个不相关的数据。我需要根据姓氏对每一行按字母顺序排列。我怎样才能做到这一点?

我尝试过使用 java.util.Arrays.sort(array[0]);但我只能让它对一行或一列进行排序。我需要将名字和姓氏放在一起并按姓氏排序。

所以说我有这个数组

String array [][]=new String[3][2];
array[0][0]="Kyle";
array[0][1]="Johnson";
array[1][0]="Drew";
array[1][1]="Anderson";
array[2][0]="Jacob";
array[2][1]="Peterson";

这是这样构建的

凯尔 |约翰逊

德鲁 |安德森

雅各布|彼得森

我需要它像这样结束

德鲁 |安德森

凯尔 |约翰逊

雅各布|彼得森

最佳答案

这是一个对二维数组进行排序的简单方法。传入用于排序的索引作为第二个参数。在您的情况下,它将是 1,因为 姓氏 的索引为 1。

为了简洁起见,我省略了 NULL 检查。

public static String[][] sort(String[][] array, final int sortIndex) {


if (array.length < 2) {
return array;
}


Arrays.sort(array, new Comparator<String[]>() {

public int compare(String[] o1, String[] o2) {
return o1[sortIndex].compareToIgnoreCase(o2[sortIndex]);
}
});

return array;

}

关于java - 在java中按字母顺序排列二维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9288464/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com