Правильно ли я понимаю, что проблема в Date.toString возвращающем "Tue Jun 27 00:00:00 GMT+03:00 2000" и НЕ содержащим "JUNE"?
package com.javarush.task.task08.task0816;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
/*
Добрая Зинаида и летние каникулы
*/
public class Solution {
public static Map<String, Date> createMap() throws ParseException {
DateFormat dateFormat = new SimpleDateFormat("MMMMM d yyyy", Locale.ENGLISH);
Map<String, Date> map = new HashMap<>();
map.put("Сталлоне", dateFormat.parse("MAY 1 2012"));
//напишите тут ваш код
map.put("Джеки Чан", dateFormat.parse("APRIL 1 2010"));
map.put("Тролль Гаврила", dateFormat.parse("JANUARY 10 1999"));
map.put("Евлампий", dateFormat.parse("JUNE 27 2000"));
map.put("Добрыня", dateFormat.parse("JULY 13 1476"));
map.put("Черный Плащ", dateFormat.parse("FEBRUARY 29 2000"));
map.put("Мумий Тролль", dateFormat.parse("MARCH 8 2008"));
map.put("Дядя Ваня", dateFormat.parse("AUGUST 20 2007"));
map.put("Леопольд", dateFormat.parse("SEPTEMBER 1 2006"));
map.put("Микки Маус", dateFormat.parse("OCTOBER 5 2005"));
return map;
}
public static void removeAllSummerPeople(Map<String, Date> map) {
//напишите тут ваш код
String [] summerMonths = new String[]{"JUNE", "JULY", "AUGUST"};
Set<String> keysToRemove = new HashSet<String>();
for (Map.Entry<String, Date> entry : map.entrySet()){
Date temp = entry.getValue();
for(String month : summerMonths){
if (temp.toString().contains(month)){
String key = entry.getKey();
keysToRemove.add(key);
}
}
}
}
public static void main(String[] args) {
}
}