Хорошо, у меня есть этот код:
TreeMap<DateTime, Integer> tree2 = getDatesTreeMap();
DateTime startx = new DateTime(startDate.getTime());
DateTime endx = new DateTime(endDate.getTime());
boolean possible = false;
int testValue = 0;
//produces submap
Map<DateTime, Integer> nav = tree2.subMap(startx, endx);
for (Integer capacity : tree2.subMap(startx, endx).values()) {
//Provides an insight into capacity accomodation possibility
//testValue++;
terminals = 20;
if(capacity >= terminals)
possible = true;
else if(capacity < terminals)
possible = false;
}
if(possible == true)
{
for (Integer capacity : tree2.subMap(startx, endx).values()) {
{
capacity -= terminals;
//not sure what to do
}
}
}else{
}
return possible;
Он проверяет диапазон дат в подкарте.затем проверяет, могут ли значения этих дат (которые, между прочим, являются ключами) соответствовать терминалам (то есть номер бронирования), тогда, если да, это вычтет это из пропускной способности, которая в настоящее время находится на карте.Я не уверен, как обновить емкость на карте для всех дат между startx и endx со значением
capacity -= terminals;
Спасибо, :)