вопрос даже не в удалении людей, а в самом начале.
по сути форматирование не работает(или я что то не понимаю), ведь "MMMMM d yyyy", Locale.ENGLISH должен в итоге выдавать запись типа MAY 1 2012, а выдает такого типа Tue May 01 00:00:00 MSK 2012
соответственно не срабатывают и изменения формата.
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("MMMM d yyyy", Locale.ENGLISH);
Map<String, Date> map = new HashMap<>();
map.put("Сталлоне", dateFormat.parse("MAY 1 2012"));
map.put("Дибров", dateFormat.parse("JULY 3 2001"));
map.put("Сидоров", dateFormat.parse("JUNE 1 2003"));
map.put("Миронов", dateFormat.parse("APRIL 1 1998"));
map.put("Кальсоне", dateFormat.parse("SEPTEMBER 1 1999"));
map.put("Продев", dateFormat.parse("OCTOBER 1 1976"));
map.put("Викторов", dateFormat.parse("JANUARY 1 1990"));
map.put("Силов", dateFormat.parse("MARCH 1 1983"));
map.put("Костин", dateFormat.parse("DECEMBER 1 2003"));
return map;
//напишите тут ваш код
}
public static void removeAllSummerPeople(Map<String, Date> map) {
DateFormat r=new SimpleDateFormat("M");
for (Map.Entry<String,Date> entry:map.entrySet()){
String h=r.format(entry.getValue());
Integer i=Integer.parseInt(h);
if (i>=5 && i<=7) map.remove(entry.getKey());
}
}
public static void main(String[] args) throws ParseException {
Map b=createMap();
System.out.println(b.entrySet());
}
}
затык- разобрался. ПОЧЕМУ ЯНВАРЬ В ТАКОМ ВИДЕ НЕ НУЛЕВОЙ МЕСЯЦ? я сорок минут ковырял. почему то