Сделал по аналогии с кодом автора предыдущего поста, не работает нифига.. В мэйне крутил вертел переменные, методы, мапы, одно в другое, через третье - ни так ни сяк, ни туда, ни сюда - сдаюсь. Не удаляет в итоге. 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("JUN 4 1988")); map.put("Иванов", dateFormat.parse("AUGUST 25 1999")); map.put("Сидоров", dateFormat.parse("OCTOBER 5 2000")); map.put("Лалала", dateFormat.parse("DECEMBER 14 2001")); map.put("Лололо", dateFormat.parse("APRIL 16 1913")); map.put("Расрас", dateFormat.parse("SEPTEMBER 8 1955")); map.put("Два", dateFormat.parse("JULY 30 2005")); map.put("Парам", dateFormat.parse("OCTOBER 2 1975")); map.put("Пампам", dateFormat.parse("MARCH 17 1989")); return map; } public static void removeAllSummerPeople(Map<String, Date> map) throws ParseException { Iterator<Map.Entry<String,Date>> iterator = map.entrySet().iterator(); DateFormat dateFormat2 = new SimpleDateFormat("MMMMM", Locale.ENGLISH); Date jun = dateFormat2.parse("JUN"); Date jul = dateFormat2.parse("JUL"); Date aug = dateFormat2.parse("AUG"); while (iterator.hasNext()){ Map.Entry<String,Date> pair = iterator.next(); String key = pair.getKey(); Date value = pair.getValue(); if(value.equals(jun)||value.equals(jul)||value.equals(aug)){ iterator.remove(); } } } public static void main(String[] args) throws ParseException { Map<String,Date> map = new HashMap<>(createMap()); removeAllSummerPeople(map); for(Object o : map.entrySet()){ System.out.println(o); } } }