イベントとイベントの2つの異なるハッシュマップにイベントを保存するシンプルなカレンダーを開発しています。対応するイベントの時刻は次のとおりです。日付はNull(Android)のままです
SimpleDateFormat evTime = new SimpleDateFormat("HH:mm");
SimpleDateFormat month = new SimpleDateFormat("MMMM - YYYY");
SimpleDateFormat day = new SimpleDateFormat("MMM dd yyyy");
HashMap<Date, ArrayList<String>> hmap = new HashMap<>();
HashMap<Date, ArrayList<String>> hmap2 = new HashMap<>();
void eventMaker(String d, String ev) {
Date date = null;
Date time = null;
try {
date = day.parse(d);
time = evTime.parse(d);
} catch (ParseException e) {
e.printStackTrace();
}
long epoch = date.getTime();
Event event = new Event(Color.RED,epoch,ev);
compactCalendar.addEvent(event);
if(!hmap.containsKey(date)){
ArrayList<String> eventList = new ArrayList<>();
eventList.add(ev);
hmap.put(date,eventList);
ArrayList<String> eventTimes = new ArrayList<>();
eventTimes.add(time.toString());
hmap2.put(date,eventTimes);
}
else{
ArrayList<String> eventList = hmap.get(date);
eventList.add(ev);
hmap.put(date,eventList);
ArrayList<String> eventTimes = hmap2.get(date);
eventTimes.add(time.toString());
hmap2.put(date,eventTimes);
}
}
問題は、変数(time)がnullのままでクラッシュすることです。その理由を知りたいのですが?
あなたが理解していないクラッシュについてlogcatとは何ですか?あなたは 'ParseException'を取得しますか?はいの場合、日付はNULLになります –
一番上にあるtryキャッチの日付を解析する際にスタックトレースを取得していませんか? – Juan