首页 > 解决方案 > 如何使用 Twitter4j 从搜索结果中获得最喜欢的推文?

问题描述

我曾尝试Collections.sort()尝试对从 Twitter4j 中搜索得到的推文列表进行排序,但它无法工作,因为它不是基于属性(例如listItem.getFavoriteCount())排序的。有什么方法可以让我使用 Twitter4j 获得最“喜欢”的推文?

标签: javatwitter4j

解决方案


不幸的是,twitter4j 使用的 Twitter Search API 不允许排序推文。在此处查看文档。

但是,您可以Status在检索后根据特定标准使用Collections.sort(...). 为此,您可以实现 aComparator并将其与Collections.sort(tweets, myComparator).

按收藏次数排序的代码可以是例如:

QueryResult result = twitter.search(query);
Collections.sort(result.getTweets(), new Comparator<Status>() {
           @Override
           public int compare(Status status1, Status status2) {
                    return Integer.compare(status2.getFavouriteCount(), status1.getFavouriteCount());
           }
});

希望这可以帮助。


推荐阅读