Мне нужно конвертировать java.util.Date
в String
в формате yyyy-MM-dd
в больших количествах.
Я только что перешел на Java 8 и хочу знать, как это сделать правильно.Мое решение с Java 7 было таким:
DateTimeFormatter DATE_FORMATTER = DateTimeFormat.forPattern(DATE_FORMAT_PATTERN)
DATE_FORMATTER.print(value.getTime())
Это помогло мне не создавать много избыточных объектов.
Так что теперь, когда я перешел на Java 8, я хочу переписать его правильно, но:
LocalDate.fromDateFields(value).toString())
каждый раз создает новый LocalDate
объект, и это дает много работы GC.
Есть ли способы решить мою проблему?Производительность и безопасность потоков очень важны.
После некоторого тестирования я обнаружил, что даже при создании новых объектов конструкция с:
new SimpleDateFormat("yyyy-MM-dd")).format(value))
самая быстрая во всей этой теме.