also welche Aufgabe hat das "df.parse" am Anfang? bzw was macht es genau. dann wie kann man denn das datum nach Monat filtern bzw. wie weiss der Rechner dass ich mit 5, Juni meine und nicht tag oder Jahr? dann, kann ich es so wie im bild einfach lösen oder braucht man den "for (Map.Entry etc) " Loop:
for(Map.Entry<String, Date> paar : map.entrySet()){
String key = paar.getKey();
Date value = paar.getValue();
if(value.getTime() > 5 && value.getTime() < 9){
map.remove(map.getKey());
}
}
und wenn man den langen braucht, wie müsste der genau aussehen?
danke schon mal im voraus :)
package de.codegym.task.task08.task0816;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.*;
import java.util.Locale;
/*
Die liebe Emma und die Sommerferien
*/
public class Solution {
public static HashMap<String, Date> mapErstellen() 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("Müller", df.parse("JUNE 2 1998"));
map.put("George", df.parse("APRIL 1 1977"));
map.put("Luce", df.parse("JANUARY 4 1995"));
map.put("Thomas", df.parse("AUGUST 3 1999"));
map.put("Steffanie", df.parse("FEBRUARY 2 1987"));
map.put("McGregor", df.parse("SEPTEMBER 15 1993"));
map.put("Bit", df.parse("OCTOBER 23 1960"));
map.put("Lee", df.parse("AUGUST 13 1977"));
map.put("Ali", df.parse("AUGUST 27 1992"));
return map;
//schreib hier deinen Code
}
public static void alleSommergeburtstagskinderEntfernen(HashMap<String, Date> map) {
//schreib hier deinen Code
//for(Map.Entry<String, Date> paar : map.entrySet()){
// String key = paar.getKey();
// Date value = paar.getValue();
//
// if(value.getTime() > 5 && value.getTime() < 9){
// map.remove(map.getKey());
// }
//}
for(Date MMMMM : map.values()){
if(MMMMM > 5 && MMMMM < 9){
map.remove();
}
}
}
public static void main(String[] args) {
}
}