我正在使用以下方法对 2D 整数数组进行排序。但排序似乎存在一些问题。有人可以帮忙吗?
private static Integer[][] sort(Integer[][] bs) {
Arrays.sort(bs, new Comparator<Integer[]>() {
@Override
public int compare(Integer[] int1, Integer[] int2) {
Integer numOfKeys1 = int1[1];
Integer numOfKeys2 = int2[1];
return numOfKeys1.compareTo(numOfKeys2);
}
});
return bs;
}
输入数组:
480 615
1320 1395
1020 1140
420585
540 780
960 1065
720810
690 750
输出:
420 585
480615
690 750
540 780 - 未排序
720 810
960 1065
1020 1140
1320 1395
最佳答案
您按第二个值而不是第一个值排序。 尝试这样的事情:
Integer numOfKeys1 = int1[0];
Integer numOfKeys2 = int2[0];
关于java - 二维整数数组的 Arrays.sort 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18079722/