樣的答案我的理解,裏面Map
對象可以調整。
1.)可擴展併發ConcurrentNavigableMap實現。該地圖根據其按鍵的自然順序或地圖創建時提供的Comparator
進行排序,具體取決於使用哪個構造函數。
2)subMap
,(K fromKey,boolean fromInclusive,K toKey,boolean toInclusive)
子圖將創建一個基於給定日期的地圖,是否包括它們。
public static void main(String[] args) throws ParseException {
ConcurrentSkipListMap<Date, Integer> myMap = new ConcurrentSkipListMap<Date, Integer>();
Calendar cal = Calendar.getInstance();
cal.add(Calendar.DATE, -7);
Date myDate1 = cal.getTime();
System.out.println("Date1 = "+myDate1);
myMap.put(myDate1, 10);
Calendar cal1 = Calendar.getInstance();
cal1.add(Calendar.DATE, -4);
Date myDate2 = cal1.getTime();
System.out.println("Date2 = "+myDate2);
myMap.put(myDate2, 5);
Date myDate3 = new Date();
System.out.println("Date 3 "+ myDate3);
myMap.put(myDate3, 2);
SortedMap<Date, Integer> outputMap = myMap.subMap(myDate1, true,myDate3, false);
System.out.println("Output Map from "+myDate1 +" to "+myDate2 + "is = "+outputMap);
}
輸出
Date1 = Thu Oct 01 16:48:48 IST 2015
Date2 = Sun Oct 04 16:48:48 IST 2015
Date 3 Thu Oct 08 16:48:48 IST 2015
Output Map from Thu Oct 01 16:48:48 IST 2015 to Sun Oct 04 16:48:48 IST 2015is = {Thu Oct 01 16:48:48 IST 2015=10, Sun Oct 04 16:48:48 IST 2015=5}
鍵值不清晰,請把例子,是一個關鍵'Date'和值'項目的數量sold','TreeMap'可以幫助也許 –
我會選擇一個'TreeMap'。 –
我認爲在Java 8中使用閉包可以幫助你定義這種方法。 –