gpt4 book ai didi

java - 比较 Joda LocalDateTime 和 DateTime 在范围内

转载 作者:行者123 更新时间:2023-12-01 14:59:14 39 4
gpt4 key购买 nike

我正在尝试编写一个方法,该方法将采用 LocalDateTimeDateTime (使用 Joda 1.3)并确定它们是否是彼此相隔 30 分钟之内。这是我能想到的最好的方法,但我知道必须有更好/更干净/更有效的方法:

public boolean isWithin30MinsOfEachOther(LocalDateTime localDateTime, DateTime dateTime) {
return (
localDateTime.getYear() == dateTime.getYear() &&
localDateTime.getMonthOfYear() == dateTime.getMonthOfYear() &&
localDateTime.getDayOfMonth() == dateTime.getDayOfMonth() &&
localDateTime.getHourOfDay() == dateTime.getHourOfDay() &&
Math.abs((localDateTime.getMinuteOfHour() - dateTime.getMinuteOfHour())) <= 30
);
)

更不用说,如果 localDateTime 是 2012 年 12 月 31 日 23:58:00 并且 dateTime 是 2013 年 1 月 1 日 00,我认为这不起作用:01:00。两个不同月份和日期的开始/结束也是如此。有什么建议么?提前致谢。

最佳答案

您是否尝试过使用 Duration类?

举个例子:

  Duration myDuration=new Duration(localDateTime.toDateTime(), dateTime);
return Math.abs(myDuration.getMillis())<=30*60*1000;

关于java - 比较 Joda LocalDateTime 和 DateTime 在范围内,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13918712/

39 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com