На данный вопрос уже ответили:
В классе Schedule имеется constructor
private HashMap<DaysOfTheWeek, ArrayList<Program>> weeklyShedual;
public Schedule() {
ArrayList<Program> daily = new ArrayList<>();
weeklyShedual.put(DaysOfTheWeek.SUNDAY, daily);
weeklyShedual.put(DaysOfTheWeek.MONDAY, daily);
weeklyShedual.put(DaysOfTheWeek.TUESDAY, daily);
weeklyShedual.put(DaysOfTheWeek.WEDNESDAY, daily);
weeklyShedual.put(DaysOfTheWeek.THURSDAY, daily);
weeklyShedual.put(DaysOfTheWeek.FRIDAY, daily);
weeklyShedual.put(DaysOfTheWeek.SATURDAY, daily);
}
По идее он должен создать семь ключей по количеству дней недели (дни отдельно в Enum), и к каждому из них пустой ArrayList при команде
Schedule schedule = new Schedule();
Но почему-то он выдаёт NullPointerException. Кто-то знает почему?
Вся фишка кроется в строке ->
private HashMap<DaysOfTheWeek, ArrayList<Program>> weeklyShedual;
Это просто резервирование памяти для объекта HashMap, самого объекта там ещё нет
Чтобы не вылетала ошибка, должно быть что-то вроде
private HashMap<DaysOfTheWeek, ArrayList<Program>> weeklyShedual = new HashMap<DaysOfTheWeek, ArrayList<Program>>();
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости