import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.time.temporal.ChronoUnit;
import java.util.*;
public class test4 {
public static void main(String[] args) throws ParseException {
LocalDate today = LocalDate.now();
LocalDate localDate1 = today.plusMonths(1);
LocalDate localDate = today.minusMonths(1);
List<Map<String, Object>> list = new ArrayList<>();
Map<String, Object> map = new HashMap<>();
map.put("data","2021-11-06");
map.put("num",1);
list.add(map);
Map<String, Object> map1 = new HashMap<>();
map1.put("data","2021-12-16");
map1.put("num",2);
list.add(map1);
Map<String, Object> map2 = new HashMap<>();
map2.put("data","2022-01-09");
map2.put("num",3);
list.add(map2);
Map<String, Object> map3 = new HashMap<>();
map3.put("data","2022-09-13");
map3.put("num",4);
list.add(map3);
Iterator<Map<String, Object>> iterator = list.iterator();
while (iterator.hasNext()){
String date1 = String.valueOf(iterator.next().get("data")) ;
LocalDate endTime = LocalDate.parse(date1);
int i = endTime.compareTo(localDate);
System.out.println(i);
if (endTime.isAfter(localDate1) ){
iterator.remove();
}
}
System.out.println(list);
}
}