我在做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的每個實例都有自己的故事。 –