java - 日期/时间计算何时涉及时区?

标签 java datetime timezone jodatime

我正在使用 Joda-Time用于处理我的 Web 应用程序中的日期时间的 API。我对在日期时间比较中使用/指定特定区域有些困惑。

我有两个文本框 - 一个用于折扣开始日期,另一个用于折扣结束日期。用户可以从 jQuery 日期时间选择器中选择一个日期。

这两个日期需要根据一些标准进行比较,例如

  • 折扣开始日期必须早于结束日期。
  • 两个日期必须相同,并且这两个日期之间必须有定义的间隔。
  • 折扣结束日期必须不能在当前日期之前,但是开始日期可以。

和其他一些。

问题不在于如何进行这些比较。这是关于一个区域。这种场景下,是否需要指定zone。

更具体地说,是否有必要使用DateTimeZone/DateTimeLocalDateTime关于 Joda API,是否足以进行此类比较?

最佳答案

根据我个人的经验,当你在玩日期和时间的东西时;您必须同时使用时区。这将使您在日期和时间计算中保持准确,尤其是在不同区域的日期和时间中。您可以将一个带时区的日期时间转换为另一个具有不同时区的等效日期时间。在 Joda Time API 中,有很多方法必须传递时区字符串或 TimeZone 对象才能获得正确的日期时间。

关于java - 日期/时间计算何时涉及时区?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14860592/

相关文章:

java - 即使在 Kafka 中进行轮询后,当前也不会发生分区分配

java - 从内部循环重新绘制 JPanel

Java 与静态 Map 中的条目同步

python - 按日期顺序组织数据行 Pandas Python

php - MySQL/PHP - 时间流逝

mysql - 用于获取一个月中某天的每个第一个事件(按日期时间字段)的 SQL 查询

php - 你如何处理时区问题?

c# - 使用 TimeZoneInfo.GetSystemTimeZones() 时获取 Windows 时区索引;

javascript - Javascript 上的有趣怪癖

底层平台为big endian时java数值类型转换