方法一:
基于java8的新特性LocalDateTime。
//如果在今天之内,返回true,否则返回false
public static boolean isOnToday(LocalDateTime paramTime){boolean result = false;//今天开始时间0时0分0秒LocalDateTime todayStartTime = LocalDateTime.w(),LocalTime.MIN);//今天结束时间23时59分59秒LocalDateTime todayEndTime = LocalDateTime.w(),LocalTime.MAX);//a.isAfter(b) a在b时间之后 a.isBefore(b) a在b时间之前if(paramTime.isAfter(todayStartTime) && paramTime.isBefore(todayEndTime )){result = true;}else if(paramTime.equals(todayStartTime ) || paramTime.equals(todayStartTime )){result = true;}return result;
}
方法二(很久之前写的,现在看来有点麻烦,所以更新了方法一):
hutool简介:
用到了hutool,下面是maven依赖
<dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>4.3.2</version>
</dependency>
代码:
import date.DateTime;
import date.DateUtil;import java.time.Instant;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.format.DateTimeFormatter;
import java.util.Date;public class Test {public static void main(String[] args) {String time = "2019-04-24 00:00:00";DateTimeFormatter dtf = DateTimeFormatter.ofPattern("uuuu-MM-dd HH:mm:ss");LocalDateTime localTime = LocalDateTime.parse(time, dtf);boolean boo = jud(localTime);System.out.println(boo);}//判断时间点是否处于今天public static boolean jud(LocalDateTime localTime){//得到今天的开始,也就是今天的00:00:00DateTime startTime = DateUtil.beginOfDay(new Date());//得到今天的结尾,也就是今天的23:59:59DateTime endTime = dOfDay(new Date());//isIn(我们要判断的时间点,开始时间, 结束时间)//是个闭区间,也就是时间点等于开始时间和结束时间,都算在这个时间段范围内boolean boo = DateUtil.isIn(locaDateTimeToUdate(localTime),startTime,endTime);return boo;}//LocalDateTime转换为Date类型public static Date locaDateTimeToUdate(LocalDateTime localDateTime){ZoneId zoneId = ZoneId.systemDefault();Instant instant = localDateTime.atZone(zoneId).toInstant();return Date.from(instant);}
}
本文发布于:2024-02-05 07:02:19,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170726910964229.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |