Мне интересно, как лучше всего, учитывая объекты TreeSet of Date, определить, являются ли эти даты ежедневными или ежемесячными. Обратите внимание, что набор ежедневных дат не будет содержать даты выходных или праздничных дней. Набор месячных дат будет иметь даты окончания месяца. Набор дат будет длиться несколько лет.
Единственный способ, которым я могу сейчас придумать, - это взять первые 12 дат из набора и проверить месяц каждой даты. Если месяц встречается более одного раза подряд, то это, вероятно, будет набор ежедневных дат. Если нет, то можно предположить, что это набор месячных дат.
Хотя кажется, что это должно работать (я не могу вспомнить ни одного крайнего случая, который бы он пропустил), мне было интересно, есть ли более элегантное решение? Я хотел бы представить какую-то структуру данных (дерево?), Которая использует компаратор на основе месяца и года. Тогда, если поддерево этой коллекции содержало более одного узла, я мог бы предположить, что это были ежедневные даты. Я не уверен, что этот способ потребует дополнительного кода или есть лучшее решение. Спасибо за любую помощь, вы можете дать мне.