我需要存儲一段由一段時間(開始,結束)和計數器定義的數據結構,該時間段包含一些複雜的計算結果。的數據結構的簡化的定義如下:我可以使用哪個java集合?
public class CounterBag {
private Period period; // collection key
private Counter counter;
// accessors
// ...
}
的Period
很簡單,只要:
public class Period {
public DateTime start;
public DateTime end;
// accessors
// ...
}
我需要有保持由不同Periods
定義CounterBag
對象的集合。 收集需要提供有效的查找(這裏是趕上!)通過long timeInMillis
,所以HashMap
是不是一個真正的選擇,因爲我不希望覆蓋equals
和CounterBag
hashcode
(我需要他們兩人)。收集需要按Period
排序(截止日期)。 Period
具有靈活的持續時間,對於執行查找的部分是不知道的。
我想知道java標準API或某些開源庫中是否有可以幫助我解決問題的開箱即用的集合?某種有序的集合或有序映射,可以按日期實現高效查找。按日期查找將返回CounterBag
和Period
日期落入。
感謝您的建議。
週期是否重疊? –