У меня есть список datetime (технически, объекты Joda LocalDateTime) в Java. Я хотел бы распечатать сжатую форму списка, сворачивая любые диапазоны дат. Что-то вроде следующего списка:Преобразование списка дат в строку диапазонов дат
2013-11-24
2013-11-25
2013-11-26
2013-11-28
2013-11-29
2013-11-30
2013-12-03
2013-12-05
2013-12-06
2013-12-07
2013-12-08
2013-12-09
2013-12-10
2013-12-11
напечатает следующий вывод:
2013-11-24->2013-11-26, 2013-11-28->2013-11-30, 2013-12-03, 2013-12-05->2013-12-11
есть более эффективный способ сделать это, чем вручную итерацию по списку, сравнивая следующее значение, и построение строки ?
Без итерации, сравнения и построения строк, возможно, нет. Но с java 8 вы можете выстрелить в потоки, сделать что-то компактное. – noscreenname
Это поддержка приложения Java 7, поэтому, к сожалению, это не очень помогает нам –
, можем ли мы ожидать, что ввод значений даты уже будет отсортирован? – JavaHopper