我有以下 TreeMap:
private Map<Date,WeekSchedule> weeks = new TreeMap<Date,WeekSchedule>();
我需要删除所有日期早于给定值的条目。
最有效的方法是什么?
这是我目前所拥有的:
public void removeWeeksBefore(Date monDate){
for (Map.Entry<Date, WeekSchedule> entry : weeks.entrySet()){
if(entry.getKey().before(monDate)){
weeks.remove(entry.getKey()); //This will destroy the iterator
}else{
return;
}
}
}
最佳答案
最有效的方法可能是将其存储为SortedMap
,然后使用单行
map.headMap(monDate).clear();
关于java - 删除小于 x 的 TreeMap 条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23936636/