将 java.util.Date 转换为 yy-MM-dd 格式的字符串,而无需创建大量对象
我需要大量转换为格式。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())
每次创建新对象,这给GC带来了很多工作。LocalDate
有什么方法可以解决我的问题吗?性能和螺纹安全性非常重要。
经过一些测试,我发现即使使用创建新对象构造:
new SimpleDateFormat("yyyy-MM-dd")).format(value))
整个主题中最快的。