java - 任何与时间戳一起使用的高性能 Java 库?

标签 java performance datetime timestamp

我正在寻找高性能 Java 库,它提供的方法可以让我获得:

  1. 当前时间 (0-24)
  2. 当前日期 (1-31)
  3. 本周(1-52)
  4. 当月 (1-12)
  5. 当前赛季(1-4)
  6. 当前年份(YYYY 或 YY)

性能对我来说是最重要的问题。这就是我不能使用标准 Calendar 类的原因。最好的解决方案是在不创建新对象的情况下进行所有计算。

添加:为了澄清,我会再提一次:每秒超过 100000 次操作。

最佳答案

您实际上可以使用出色的 joda-time 库来执行此操作。 joda 中的 Chronology 实现提供了 DateTime getHour getDay 类型方法背后的逻辑。如果您想跳过创建 DateTime 瞬间,直接使用它没有问题。

long msSinceEpoch = System.currentTimeMillis();

Chronology chronology = ISOChronology.getInstanceUTC() // This can be static

chronology.hourOfDay().get(msSinceEpoch);
chronology.dayOfMonth().get(msSinceEpoch);
chronology.weekOfWeek().get(msSinceEpoch);
chronology.monthOfYear().get(msSinceEpoch);
chronology.years().get(msSinceEpoch);

session 不是 joda 的概念。您必须根据自己的规则从当月算起。

参见 joda-time documentation on Chronology

关于java - 任何与时间戳一起使用的高性能 Java 库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6465330/

相关文章:

javascript - 如何在 JavaScript 中解析日期时间字符串的日期部分?

java - 如何在俄罗斯方 block 游戏中保留底部的矩形?

Oracle 调整/分析表

CSS 文件仅在某些页面上加载缓慢

php - 代码点火器 3 : delete all rows older than 2 months

datetime - 检查 vba excel 2010 64 位中的特定日期格式

java - Selenium:如何将 id 或类与特定的 div 相关联?

java - 尝试连接到 mysql 数据库,出现异常“必须在 : 之后指定端口号”

java - ByteArrayOutPutSteam 到 Byte[] 未按预期工作

c# - Image.FromFile 非常慢。任何替代方案,优化?