Мне нужно преобразовать 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))
быстрее всего по этой теме.