2

java.util.GregorianCalendar轻量级的对象吗?换句话说,是否在每个请求的 Web 应用程序设置中调用构造函数只会带来微不足道的性能损失,或者缓存对象的副本以供应用程序共享使用是否值得?

4

3 回答 3

5

TimeZone您可以通过缓存/共享不可变的and来提高 GregoianCalendar 的性能Locale

java GregorianCalendar 是轻量级对象吗?

如果你的意思是轻量级;就像一个由混凝土制成的气球。;)

是否在每个请求的 Web 应用程序设置中调用构造函数只会带来微不足道的性能损失

与您正在做的其他事情相比,它可能相对微不足道。在您对应用程序进行 cpu 配置文件之前,您无法知道。

缓存对象的副本以供应用程序共享使用是否值得

仅当您将对象视为不可变时(这可能不是很有用)

使用共享的可变 GregorianCalendar 可能会引入比运行缓慢更糟糕的错误。

顺便说一句:我会考虑使用 JodaTime。它稍微快一点,但通常更好用。

于 2012-10-03T09:32:17.160 回答
1

使用JODA 日期时间。它也在 java 8 中添加。

于 2012-10-03T09:31:27.497 回答
1
于 2018-02-06T02:23:19.947 回答