【发布时间】:2017-05-22 12:12:02
【问题描述】:
我知道我可以使用以下代码将 long 转换为 Data 并获取其小时部分:
Calendar c = Calendar.getInstance();
c.setTimeInMillis(long-variable);
c.get(Calendar.HOUR_OF_DAY);
但这确实效率不高,而且由于这段代码从多个线程运行,我不能只重用 Calendar 对象,有没有更有效的方法从日期的长表示中获取小时部分?
谢谢!
【问题讨论】:
-
long表示没有与之关联的时区 -Calendar有。long表示只是一个瞬间。在英国,当前时间对我来说一天中有 13 个小时,但它可能完全适合您……您对哪个时区感兴趣?您当前的代码使用系统默认时区 - 您确定这是您想要的吗? -
(longvar/1000/60/60)%24?当然,你会得到 GMT 的时间。
标签: java