java - 按特定列对多种类型多维数组进行排序

标签 java sorting multidimensional-array

我有一个多维字符串数组。它包含数字和字符串。有什么办法可以按特定的整数列对其进行排序吗? 例如我有这个:

  1. 狐狸 | 32 | 32一个
  2. 狗 | 45 | 45两个
  3. 猫 | 34 | 34三
  4. 蛇 | 3 |四

我想按整数列对这个字符串数组进行排序。 例如:

  1. 狗 | 45 | 45两个
  2. 猫 | 34 | 34三
  3. 狐狸 | 32 | 32一个
  4. 蛇 | 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/

相关文章:

c - 你将如何在 C 中声明一个二维指针数组?

java - 如何使用 Java 发送 HTTP GET 并使用用 C++ 编写的 CGI 应用程序打印 QUERY_STRING 环境变量?

Java关于反转字符串

python - 选择排序算法Python

javascript - 3D 数组 JavaScript

Javascript 将数组项推送到命名索引

java - 观察递归期间创建的内部堆栈上的值

java - Spring - MVC - 在重新显示给用户之前清理 URL

c - 我需要有关在 C 文本文件中显示前 5 名分数的功能的帮助

c - 填充字母在文本文件中出现的频率的数组。如何在 C 中排序(降序)并且仍然知道哪个字母与哪个数字对应?