计算两个时间相差的天数(支持跨月、跨年)

172 阅读1分钟

计算两个时间相差的天数(支持跨月、跨年):

    /**
     * JDK 8计算两个时间相差的天数,支持跨月、跨年
     * @param startTimeStamp 开始时间戳
     * @param endTimeStamp 结束时间戳
     * @return 相距天数,若开始时间大于结束时间,
     * 则返回对应复数
     */
    public long diffDays(long startTimeStamp,long endTimeStamp){
        LocalDate startTime = Instant.ofEpochMilli(startTimeStamp).atZone(ZoneOffset.ofHours(8)).toLocalDate();
        LocalDate endTime = Instant.ofEpochMilli(endTimeStamp).atZone(ZoneOffset.ofHours(8)).toLocalDate();
        return ChronoUnit.DAYS.between(startTime, endTime);
    }