如何使用Twitter4j从搜索结果中获得最喜欢的推文



我曾尝试使用Collections.sort()对我在Twitter4j中搜索得到的推文列表进行排序,但它无法工作,因为它没有根据属性(例如listItem.getFavoriteCount()(进行排序。有什么办法可以让我在推特4j上获得最"受欢迎"的推特吗?

不幸的是,twitter4j使用的Twitter搜索API不允许对推文进行排序。请查看此处的文档。

但是,您可以使用Collections.sort(...)根据特定条件对检索后的Status(tweets(对象进行排序。为此,您可以实现Comparator并将其与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());
}
});

希望这能有所帮助。

最新更新