Ребят, вижу по выделению цветом, что проблема в 40-42, а именно в map.remove(a). Будто "а" в скобках недостаточно. Но вроде должно же работать. Или я не элемент массива данной командой удалаю?
package com.javarush.task.task08.task0816;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.Locale;
import java.util.Map;
/*
Добрая Зинаида и летние каникулы
*/
public class Solution {
public static HashMap<String, Date> createMap() throws ParseException {
DateFormat df = new SimpleDateFormat("MMMMM d yyyy", Locale.ENGLISH);
HashMap<String, Date> map = new HashMap<String, Date>();
map.put("Stallone", df.parse("JUNE 1 1980"));
//напишите тут ваш код
map.put("Alban", df.parse("FEBRUARY 2 1991"));
map.put("Joe", df.parse("JULY 3 1989"));
map.put("Alan", df.parse("JANUARY 4 1987"));
map.put("Jack", df.parse("MARCH 5 1988"));
map.put("John", df.parse("APRIL 7 1978"));
map.put("Sansa", df.parse("MAY 13 1992"));
map.put("Aria", df.parse("JUNE 11 1993"));
map.put("Bran", df.parse("AUGUST 8 1985"));
map.put("Sam", df.parse("SEPTEMBER 1 1991"));
return map;
}
public static void removeAllSummerPeople(HashMap<String, Date> map) {
//напишите тут ваш код
for (Map.Entry<String, Date> a : map.entrySet()) {
Date d = a.getValue();
String s = d.toString();
if (s.contains("JUN")) map.remove(a);
else if (s.contains("JUL")) map.remove(a);
else if (s.contains("AUG")) map.remove(a);
}
}
public static void main(String[] args) {
}
}