I originally tried (5 <= month && month < 8), which failed, so I turned to this.
package zh.codegym.task.task08.task0816;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
/*
善良的艾玛和暑假
*/
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("史泰龙", df.parse("JUNE 1 1980"));
map.put("Steve Jobs", df.parse("FEBRUARY 24 1955"));
map.put("Elon Musk", df.parse("JUNE 28 1971"));
map.put("Steve Rogers", df.parse("JULY 4 1918"));
map.put("Anthony Stark", df.parse("MAY 29 1970"));
map.put("Howard Stark", df.parse("AUGUST 15 1917"));
map.put("Peter Parker", df.parse("AUGUST 10 2002"));
map.put("Stephen Strange", df.parse("JULY 3 1930"));
map.put("Bucky Barnes", df.parse("MARCH 10 1917"));
map.put("Nick Fury", df.parse("JULY 4 1950"));
return map;
}
public static void removeAllSummerPeople(HashMap<String, Date> map) throws ParseException {
for (Map.Entry<String, Date> pair : map.entrySet()) {
String key = pair.getKey();
DateFormat df = new SimpleDateFormat("MMMMM d", Locale.ENGLISH);
String summerStart = "JUNE 1";
String summerEnd = "AUGUST 31";
if (df.parse(summerStart).before(map.get(key)) && df.parse(summerEnd).after(map.get(key)))
map.remove(key);
}
}
public static void main(String[] args) {
}
}