当前位置: 首页 > 知识库问答 >
问题:

如何表示Joda时间中的任何“持续时间”或“时期”?

琴俊良
2023-03-14

我想把24小时表示为“持续时间”。也就是说,应该是从00:00:00到24:00:00。像今天上午12点到明天上午12点这样的事情是不好的。这也是24小时,但这不是我想要的。此外,这个“持续时间”不应该附带日期或日期的概念。

如何使用Joda Time完成此操作?

编辑-

用例——“我想创建一个调度程序。24小时的“周期”被分成任意大小的切片,如20分钟、30分钟或1小时。我只想用Joda创建一个24小时的“时段”和该时段的片段。我知道Joda不能做任何shceduling。

如。

1小时的切片-

00:00:00 - 01:00:00
01:00:00 - 02:00:00
all the way up to -
23:00:00 - 24:00:00

附表-

00:00:00 - 07:00:00 - sleep
07:00:00 - 08:00:00 - get ready for work
08:00:00 - 09:00:00 - drive to work
09:00:00 - 17:00:00 - work
etc...

这是工作日的日程安排。周末是用来放松的。:)

共有1个答案

董弘新
2023-03-14

有一个诱人的时期课程。。。只是不要在上面设置日期字段,只设置时间字段。

或者还有LocalTime,它代表一天中的某个时间。

根据您的编辑,它听起来像是LocalTime加上一个数字的组合,该数字指示插槽的长度(以分钟或您认为合理的任何单位为单位)。因此,您可能有一个ScheduleEntry类,该类具有LocalTime成员,用于计算日程条目何时开始,以及int持续多长时间。

 类似资料:
  • 在我的应用程序中,用户需要能够输入持续时间,包括分钟和秒。 我正在考虑使用Windows中的控件来更改时间,虽然我只需要几分钟和几秒钟,而且箭头也很好,但不是必需的。 JavaFX 2中是否已经有此控件 如果没有,我如何创建这样的控件 上述Windows控件的屏幕截图: 谢谢你的提示!

  • 问题内容: 我有一个价值,我想得到另一个正好是1个月前的时间。 我知道可以用(想要另一个)进行减法,但这会导致a,而我反过来需要它。 问题答案: 尝试AddDate: 产生: 游乐场:http://play.golang.org/p/QChq02kisT

  • 我遇到了一个问题,我的MySQL表有一个存储UTC时间偏移的字段。该字段为时间类型。这是出于遗留原因,我无法将列类型更改为更好的表示形式。然而,MySQL支持这一点。它允许用户在时间字段中存储负值,以表示负时差。我使用querydsl生成实体类,并将该字段映射到java。sql。时间物体。现在,当DB中有负值时,我面临一个问题。爪哇。sql。Time类将任何负值转换为前一天的时间。例如,如果DB中

  • 我正在尝试使用Joda在一个简单的Java程序中获取UTC时间戳: 程序输出如下: 毫秒值是正确的UTC时间(即用时区确认)第二个值是时区。 我需要的是UTC值不变为(即独立于TZ),用于数据库写入。这可能吗? 我知道是本地日期(GMT-4),是UTC(GMT-0)。日期的输出值如下: 我尝试了所有组合,试图将的UTC值作为java.sql.TimeStamp: 用于测试的打印输出: 第一行是正确

  • 我需要一些解释为什么这个代码不编译: 错误: 类型Duration中的(TemporalAmount)方法不适用于参数(ChronoUnit) 正如本文所述: public static Duration from(TemporalAmount amount)从时间量中获取持续时间的实例。这将根据指定的金额获得持续时间。TemporalAmount表示一个时间量,可以是基于日期的,也可以是基于时间

  • 我正在尝试创建一个蛇游戏,我使用箭头键或WASD移动蛇。最初,蛇的速度很慢,并且以每秒2帧的速度移动(就像经典的蛇游戏),我希望当我按住其中一个键时,蛇的移动速度更快,当我松开它时,将其设置为原始速度。 我试着在按下ON键的情况下改变移动速度: 然后在我发布时将其更改为正常速率: *运动是一条时间线,从游戏开始到蛇停止或死亡。 代码按我的预期工作,但每次我按下一个键时,它都会加速一个周期,然后变慢