gpt4 book ai didi

JAVA:在多列上对 ArrayList> 进行排序

转载 作者:行者123 更新时间:2023-12-02 00:12:28 25 4
gpt4 key购买 nike

首先,我在发帖之前做了功课搜索。与那里发布的问题相比,我的要求似乎略有不同。

我有一个像ArrayList<ArrayList<Integer>>这样的矩阵格式如下

| id1 | id2 | score |
|-----|-----|-------|
| 1 | 3 | 95% |
| 1 | 2 | 100% |
| 1 | 4 | 85% |
| 1 | 5 | 95% |
| 2 | 10 | 80% |
| 2 | 15 | 99% |

我想按列对矩阵进行排序(首先使用分数,然后使用 id1)。我已经以排序的方式获得了 id1 。这意味着我还需要首先使用分数对具有相同 id1 的所有记录进行排序,然后使用 id2 对所有记录进行排序。这样做的原因是为了在每个id1中创建i​​d2的排名。上述示例的结果将是:

| q_id | d_id | rank | score |
|------|------|------|-------|
| 1 | 2 | 1 | 100% |
| 1 | 3 | 2 | 95% |
| 1 | 5 | 3 | 95% |
| 1 | 4 | 4 | 85% |
| 2 | 15 | 1 | 99% |
| 2 | 10 | 2 | 80% |

如何使用集合的一些内置方法在 Java 中实现此目的?

最佳答案

创建一个对象,其中包含每个 ArrayList 行的所有列/字段。然后利用Comparator接口(interface)并使用Collections.sort()。

您可以查看http://docs.oracle.com/javase/7/docs/api/java/util/Collections.html#sort%28java.util.List,%20java.util.Comparator%29

关于JAVA:在多列上对 ArrayList<ArrayList<Integer>> 进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12467226/

25 4 0