我在做Java租车应用程序。我应该在Java中使用哪种数据结构?
- 我
Car
类字符串RegNo
,producer
,model
和布尔isCarRented
。汽车 列表我保持在:
Collection<Car> carList = new HashSet<Car>();
,一切工作正常。
现在我需要做的是对整个租赁公司历史/统计模块:
所有汽车租赁的历史
每个汽车租赁历史分开
我的想法是:
与创建
CarHistory
类:私有静态
List<String> rentalDates = new ArrayList<String>();
保持有日期这我要添加的每个车是租来的时间。
创建数据结构,记住每个汽车租赁历史是这样的:
static Map<Car, CarHistory> rentalList = new HashMap<Car, CarHistory>();
这是个好办法吗?我在这个解决方案中遇到了单个CarHistory
的构造函数问题。不太确定它应该返回什么。我应该在首次出租后创建它吗?并且应该为每辆车创建空的List
rentalDates
以创建HashMap
?
你似乎很喜欢静态,不是吗?将它用于rentalDates是没有意义的。阅读https://docs.oracle.com/javase/tutorial/java/javaOO/classvars.html。为什么汽车没有保留自己的历史(就像它已经保存了自己的汽车轮胎标志一样)?为什么使用字符串来存储日期? –
非常感谢您的指导。当然,将字符串更改为日期数组,仍然需要考虑更多关于过度使用静态的信息。现在Car的每个实例都有自己的故事。 –