0
这是正确的吗?获取列表中最旧的时间戳Java
ArrayList<Timestamp> timeStampList = new ArrayList<Timestamp>();
timeStampList.add(0, new Timestamp(System.currentTimeMillis()));
Thread.sleep(600);
timeStampList.add(1, new Timestamp(System.currentTimeMillis()));
Collections.sort(timeStampList);
Timestamp tempStamp = timeStampList.get(0);
for (Timestamp startstamp : timeStampList)
{
if (tempStamp != startstamp)
{
long diffTime = startstamp.getTime() - tempStamp.getTime();
diffDays = diffTime/(1000 * 60 * 60);
if(diffDays > 24)
{
System.out.println(diffDays/24 +"Day" + " "+diffDays % 24 + "hours");
}
tempStamp = startstamp;
}
}
我不知道我怎么能找到数组列表中最老的时间戳。任何意见或直接答复表示赞赏。非常感谢。目前这个代码我认为只是比较。
编辑:所以假设我没有在这个上下文中使用Collection.sort,我知道我应用了当我发布,但让我们假设我想知道如何比较并找到所有在arrayList中最老的时间戳通过for-loop。
好吧,你已经对它们进行了排序,所以你的列表的下界是你最古老的。 – SnakeDoc 2014-11-01 22:52:12
我是Java的新手,所以任何建议或帮助表示赞赏。最后一个意思是(self.size())是最老的时间戳吗? – 2014-11-01 22:53:42
'Collections.sort'使用升序排列,因此第一个元素将是最早的元素。 – Tom 2014-11-01 22:55:54