天天看点

java.util.Date 与 java.time.LocalDateTime互转及大小比较

java.util.Date 与 java.time.LocalDateTime互转及大小比较

Instant startTime = date.toInstant();
ZoneId zoneId = ZoneId.systemDefault();
LocalDateTime startDate = LocalDateTime.ofInstant(startTime, zoneId);      

/**
     * 比较日期大小 A小于B
     * @param date1
     * @param date2
     * @return true 小于 false 大于
     */
    public static boolean localDateBefore(Date date1,Date date2) {
        Instant startTime = date1.toInstant();
        Instant endTime = date2.toInstant();
        ZoneId zoneId = ZoneId.systemDefault();
        LocalDateTime startDate = LocalDateTime.ofInstant(startTime, zoneId);
        LocalDateTime endDate = LocalDateTime.ofInstant(endTime, zoneId);
        return startDate.isBefore(endDate);
    }      

/**
     * 比较日期大小 A大于B
     * @param date1
     * @param date2
     * @return true 大于 false 小于
     */
    public static boolean localDateAfter(Date date1,Date date2) {
        Instant startTime = date1.toInstant();
        Instant endTime = date2.toInstant();
        ZoneId zoneId = ZoneId.systemDefault();
        LocalDateTime startDate = LocalDateTime.ofInstant(startTime, zoneId);
        LocalDateTime endDate = LocalDateTime.ofInstant(endTime, zoneId);
        return startDate.isAfter(endDate);
    }      

/**
     * 比较日期大小 A等于B
     * @param date1
     * @param date2
     * @return true 相等 false 不相等
     */
    public static boolean localDateEqual(Date date1,Date date2) {
        Instant startTime = date1.toInstant();
        Instant endTime = date2.toInstant();
        ZoneId zoneId = ZoneId.systemDefault();
        LocalDateTime startDate = LocalDateTime.ofInstant(startTime, zoneId);
        LocalDateTime endDate = LocalDateTime.ofInstant(endTime, zoneId);
        return startDate.isEqual(endDate);
    }      

继续阅读