Java 检查列表中的对象是否为最后一个对象(按日期)的最佳方法

Java 检查列表中的对象是否为最后一个对象(按日期)的最佳方法,java,list,collections,Java,List,Collections,我不知道检查列表中的对象是否是最后创建的对象的最佳方法是什么 做这件事的最佳方法是什么 我应该获取列表中的最后一个元素并检查给定元素是否是最后一个吗?使用此检查 listObj.indexOf(yourObject) == (listObj.size() -1); 注意:List类不保证 订购-物品将保留在 按添加顺序排列的列表, 包括副本,除非您 对列表进行显式排序 如果您希望按特定属性(例如它的日期属性)对对象进行排序,请查看可比较的接口()。如果实现此接口(或比较器),则可以使用Ja

我不知道检查列表中的对象是否是最后创建的对象的最佳方法是什么

做这件事的最佳方法是什么

我应该获取列表中的最后一个元素并检查给定元素是否是最后一个吗?

使用此检查

listObj.indexOf(yourObject) == (listObj.size() -1);  
注意:List类不保证 订购-物品将保留在 按添加顺序排列的列表, 包括副本,除非您 对列表进行显式排序


如果您希望按特定属性(例如它的日期属性)对对象进行排序,请查看可比较的接口()。如果实现此接口(或比较器),则可以使用Java API提供的集合对对象进行自动排序。

这在很大程度上取决于您的实现

如果对象按创建顺序追加到列表末尾,则列表中的第一项(索引0)将是最早的

如果列表中的对象以未知顺序追加,并且对象具有查询创建日期的方法,则可以:

  • 基于对象创建日期实现排序列表
  • 遍历列表中的每一项并找到最早的对象

  • 当项目添加到列表中或显式排序列表时,选项1会产生开销。当您要检索最旧的对象时,选项2会产生开销。

    列表是否按创建日期排序?否,但org.life.java等按日期排序的列表会显示:-除非您显式地对列表进行排序,否则列表中的内容将按您添加它们的顺序保留,包括重复项。列表和列表在您的示例中是相同的否?