我想用HashMap將事件列表分組爲日期,但我遇到了問題。我希望日期成爲關鍵,而事件將成爲價值。因此,每個匹配鍵的事件都將存儲在HashMap中的List中。到目前爲止,我有一個事件列表和列表日期.....我的代碼顯示在下面,在此先感謝。如何通過鍵列表對Hashmap中的列表元素進行分組
代碼
public class TestMap {
public static void main(String[] args){
TestMap test = new TestMap();
List<Date> mDays = new ArrayList<Date>();
SimpleDateFormat mFormat = new SimpleDateFormat("EEEE d MMMM yyyy");
GregorianCalendar mCalendar = (GregorianCalendar)GregorianCalendar.getInstance();
mCalendar.setTime(new Date());
for (int i = 0; i < 7; i++){
mDays.add(mCalendar.getTime());
mCalendar.add(Calendar.DAY_OF_WEEK, 1);
System.out.println("Date: " + mFormat.format(mDays.get(i)));
}
List<Events> mEvents = new ArrayList<Events>();
mEvents.add(new Events("1", "boat party", "Sunday 7 December 2014"));
mEvents.add(new Events("2", "church meeting", "Monday 8 December 2014"));
mEvents.add(new Events("3", "shopping", "Saturday 13 December 2014"));
mEvents.add(new Events("4", "clubbing", "Friday 12 December 2014"));
mEvents.add(new Events("5", "visiting", "Thursday 11 December 2014"));
mEvents.add(new Events("6", "tour", "Wednesday 10 December 2014"));
mEvents.add(new Events("7", "work", "Tuesday 9 December 2014"));
mEvents.add(new Events("1", "beckie birthday", "Sunday 7 December 2014"));
mEvents.add(new Events("2", "camping", "Monday 8 December 2014"));
mEvents.add(new Events("3", "gym", "Saturday 13 December 2014"));
mEvents.add(new Events("4", "working", "Friday 12 December 2014"));
mEvents.add(new Events("5", "farming", "Thursday 11 December 2014"));
mEvents.add(new Events("6", "attend sales", "Wednesday 10 December 2014"));
mEvents.add(new Events("7", "work", "Tuesday 9 December 2014"));
for(Events evt: mEvents){
System.out.println("ID: " +evt.getEventId()+ " Title: "+evt.getEventTitle()+ " Date:
"+evt.getStartDate());
}
}
}
活動類:
class Events{
private String eventId;
private String eventTitle;
private String startDate;
public Events(String eventId, String eventTitle, String startDate) {
super();
this.eventId = eventId;
this.eventTitle = eventTitle;
this.startDate = startDate;
}
public String getEventId() {
return eventId;
}
public void setEventId(String eventId) {
this.eventId = eventId;
}
public String getEventTitle() {
return eventTitle;
}
public void setEventTitle(String eventTitle) {
this.eventTitle = eventTitle;
}
public String getStartDate() {
return startDate;
}
public void setStartDate(String startDate) {
this.startDate = startDate;
}
}
謝謝zozelfelfo,它有一點幫助,但你可以請添加一個代碼片段作更多的說明。 – mish 2014-12-07 11:34:08
檢查我的編輯答案@mish – zozelfelfo 2014-12-07 20:10:17
非常感謝這真的幫了我 – mish 2014-12-08 10:15:42