gpt4 book ai didi

java - java 中的日期比较搜索今天、明天

转载 作者:行者123 更新时间:2023-12-02 01:20:49 26 4
gpt4 key购买 nike

我接受 JSP 页面的属性并想要进行比较。传递给 servlet 的日期是今天、明天还是另一天。我如何比较这个???

   Date dateToDo = Date.valueOf(request.getParameter("date")); //for example 2019-08-31

Date today = new Date (System.currentTimeMillis());
Date tomorrow = new Date (System.currentTimeMillis() + 86400000);



if(dateToDo.equals(today)){
System.out.println("Today!");
} else if (dateToDo.equals(tomorrow)){
System.out.println("Tomorrow!");
} else {
System.out.println("OTHER DAY");
}

最佳答案

java.time

    LocalDate dateToDo = LocalDate.parse(request.getParameter("date")); //for example 2019-08-31

LocalDate today = LocalDate.now(ZoneId.of("Europe/Minsk"));
LocalDate tomorrow = today.plusDays(1);

if(dateToDo.equals(today)){
System.out.println("Today!");
} else if (dateToDo.equals(tomorrow)){
System.out.println("Tomorrow!");
} else {
System.out.println("OTHER DAY");
}

不要使用java.sql.Date。首先,它设计得很糟糕,确实是一个糟糕的黑客,而且早已过时了。其次,它除了在 SQL 数据库之间传输日期之外,没有任何其他用途。第三,虽然它假装只是一个没有时间的日期,但事实并非如此,而是在内部存储了毫秒精度,这导致其 equals 方法无法按预期工作。相反,我使用 java.time 中的 LocalDate,这是现代 Java 日期和时间 API。 LocalDate 就是您所需要的:没有时间和时区的日期。

链接: Oracle tutorial: Date Time解释如何使用 java.time。

关于java - java 中的日期比较搜索今天、明天,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57740369/

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