1

我有一个 ArrayList 列表,每个 arraylist 由一个日期和一个字符串组成。我想根据数组列表中的日期对列表进行排序。我试图寻找答案,但无法在网上找到。大多数示例都是按日期对对象列表进行排序。有什么建议么?

public List<ArrayList> SuggestionReport() {
    Query q = em.createQuery("SELECT s FROM SuggestionEntity s");
    List<ArrayList> report = new ArrayList();
    for (Object o : q.getResultList()) {
        suggestionEntity = (SuggestionEntity) o;
        ArrayList suggestion = new ArrayList();
        suggestion.add(suggestionEntity.getSuggestionDate());
        suggestion.add(suggestionEntity.getContent());
        report.add(suggestion);
    }

    return report;
}

附言。我想在返回列表之前对列表进行排序

4

2 回答 2

4

无需编写额外代码,只需将您的查询更改为

SELECT s FROM SuggestionEntity s order by  suggestion_date ASC|DESC

suggestion_date 您的列名在哪里。

ASC|DESC 是您想要的订单,选择ASCDESC根据您的要求。

在此处了解有关订购的更多信息

于 2013-10-12T08:38:47.923 回答
0

您应该编写自己的比较器,然后按如下方式对其进行排序:

Collections.sort(list, myComparator);
于 2013-10-12T08:38:45.347 回答