java twitter4j是tweet ID独特的

时间:2013-08-13 17:43:39

标签: java twitter unique twitter4j

使用twitter4j做一些java dev,并且好奇地知道我什么时候打电话给

Status tweet = blah blah blah.
long tweetID = tweet.getId(); //Is this unique?

我设置了一个HashSet,以便跟踪我已收到的推文,并且我有一份重复的打印声明。我的印象是Twitter使用64位长的时间来生成唯一的密钥,但我无法找到twitter4j tweet id和Twitter的推文ID之间的任何关联。主要问题是:twitter4j状态推文ID是否唯一?

[编辑] 一些详细说明,我有一个Longs的HashSet

HashSet<Long> usedIds = new HashSet<Long>();
//Get new twitter4j Status
if(!usedIds.contains(tweetID)) {
    //this is not a duplicate
    //Place id into set
    usedIds.add(tweetID);
    //do work
} else {
    //This is duplicate and my program is printing stuff
    //From what I've learned this condition should never be met but it is
}

1 个答案:

答案 0 :(得分:2)

我很确定twitter4j的Status.getId()会返回推文的唯一ID,由Twitter决定。它不是创建自己的ID。也许你的HashSet对密钥空间过于激进并且你正在发生冲突,但是getId调用会给你Tweet的实际ID。