我有一个玩具(Java)项目,旨在作为信号提供者,数据提供者和信号执行者之间的服务器。该系统从数据提供者接收以下格式的消息:
EURUSD @ 11214,11216,11213,11215,1,03 / 22 / 2016_17:36:01
我的问题是关于日期:在每条消息上创建一个新的java util Date将导致大量垃圾,我想避免这种情况。我可以将信息存储在一个int数组中(年,月,日,小时等),但是我会失去Date的许多好处,即比较两个实例的简易性。你会做什么?
请避免像“过早优化”或“Java中的对象创建便宜”这样的回复。
答案 0 :(得分:2)
以普通long
存储日期(距离Epoch的毫秒数)。
使用Calendar
的单个实例将其转换为年/月/日
(或ThreadLocal<Calendar>
在多线程环境中)。