哪个集合最适合实施此计划?

Phy*_*sse 0 java collections

Kitchen和每一个Product在我Kitchen有一个到期日期,

这是x在创建后初始化的天数

 x =  for wine 3 years
      for cheese 10 days 
      for eggs 2 days
Run Code Online (Sandbox Code Playgroud)

询问应该来自Kitchen- 厨房中的哪个产品首先到期?

请有人准备好帮我实现这个或者给我一个指导方针吗?我只是进入Java编程世界的6周,挑战自己.

Ste*_*n C 7

最合适的数据结构是PriorityQueue具有按到期日期对对象进行排序的ComparatorProduct.

如果你想要一个更通用的类,那么a TreeSet(具有相同的比较器类)就可以完成这项工作.(但是有一个障碍.你的比较器需要一个打破平局,以便两个Product具有相同失效日期的不同对象不被视为相等.如果你不这样做,那么其中一个Product对象将被视为副本,而不是添加到集合中.)