0

我有一个独特的问题,我必须确定两件事。

1)如果我的当前时间和自定义时间在同一个 30 分钟的时间段内(比如下午 2:10 并且自定义时间是下午 2:22,我想看到它们在 2 到 2:30 的同一时间段内) 但如果当前时间是下午 1:55 并且自定义时间是下午 2:15(30 分钟差异但不在同一设备/时钟时间段内,因为一个是下午 1:30 到下午 2 点,另一个是下午 2 点到 2 点 30 分)

2)现在,在30分钟的同一时间段内,如果当前时间在自定义时间之前,我想返回一个true,否则返回一个false。有什么方法可以计算这个吗?我希望在我的通用 utils 类中添加一个自定义函数,我可以在其中提供自定义时间和当前时间并查看结果,因此拥有一些通用的东西会很有用。有任何想法吗?

我看过:无论日期和其他文章如何,检查给定时间是否介于两次之间,但没有描述 30 分钟设备/时钟时间段。

任何想法如果https://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/time/DateUtils.html会以某种方式帮助我操纵这个确切的逻辑或任何自定义函数/库在android对此有帮助。真的很有帮助!

4

1 回答 1

-1
package Demo;

import java.time.LocalDateTime;
import java.time.temporal.ChronoUnit;
import java.util.Arrays;
public class Test1 {
    public static void main(String arg[]) {
        LocalDateTime ct = LocalDateTime.now();
        LocalDateTime custemTime = ct.plusMinutes(5);
        System.out.println(ct);
        System.out.println(custemTime)  ;
        System.out.println(isInSameSlots(ct,custemTime));

    }   
    static boolean   isInSameSlots(LocalDateTime ldt1, LocalDateTime ltd2) {
        Long timeDiff = ChronoUnit.MINUTES.between(ldt1, ltd2);
        if(timeDiff > 30 || timeDiff < 0) 
           return false;
        return (ldt1.getMinute() <= 30 && ltd2.getMinute() <= 30) || (ldt1.getMinute() > 30 && ltd2.getMinute() > 30 ) ? true : false; 

    }

}

情况1

2019-06-10T18:40:09.122

2019-06-10T18:45:09.122

真的

案例 2) 2019-06-10T18:46:56.350 2019-06-10T19:06:56.350 错误

于 2019-06-10T13:17:41.063 回答