我有一个多维字符串数组。它包含数字和字符串。有什么办法可以按特定的整数列对其进行排序吗? 例如我有这个:
- 狐狸 | 32 | 32一个
- 狗 | 45 | 45两个
- 猫 | 34 | 34三
- 蛇 | 3 |四
我想按整数列对这个字符串数组进行排序。 例如:
- 狗 | 45 | 45两个
- 猫 | 34 | 34三
- 狐狸 | 32 | 32一个
- 蛇 | 3 |四
我尝试过这个,但它需要整数数组。
Arrays.sort(temp, new Comparator<int[]>() {
@Override
public int compare(int[] o1, int[] o2) {
return Integer.compare(o2[1], o1[1]);
}});
最佳答案
这解决了您的问题:(已更新)
public static void main(String[] args) {
String[][] temp = {
{ "Fox", "32", "One" },
{ "Dog", "45", "Two" },
{ "Cat", "34", "Three" },
{ "Snake", "3", "Four" }
};
Arrays.sort(temp, new Comparator<String[]>() {
@Override
public int compare(String[] row1, String[] row2) {
return Integer.compare(
Integer.parseInt(row1[1]), Integer.parseInt(row2[1]));
}
});
System.out.println(Arrays.deepToString(temp));
}
关于java - 按特定列对多种类型多维数组进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30517789/