日期工具类,呕心沥血整理的,不好用捶我
整理的是我自己平时经常会用到的对时间的一些操作!
贴心之作!!
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
import org.apache.commons.lang3.StringUtils; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.*; /** * @ProjectName: git-dev * @Package: com.zy.auction.controller * @ClassName: DateUtils * @Author: zxq * @Description: 日期工具类 * @Date: 2021/3/17 10:06 上午 */ public class DateUtils { public interface DATE_FMT { /** 星期几的格式 */ public static String EEEE = "EEEE"; /** MM/dd */ public static String MM_DD = "MM/dd"; /** MM:dd */ public static String HH_MM = "HH:mm"; /** HHmmss */ public static String HHMMSS = "HHmmss"; /** HH:mm:ss */ public static String HH_MM_SS = "HH:mm:ss"; /** yyyyMMdd */ public static String YYYYMMDD = "yyyyMMdd"; /** yyyy-MM-dd */ public static String YYYY_MM_DD = "yyyy-MM-dd"; /** yyyy/MM/dd */ public static String YYYYLMMLDD = "yyyy/MM/dd"; /** yyyy年MM月dd日 */ public static String YYYY年MM月DD日 = "yyyy年MM月dd日"; /** yyyy年MM月dd日 HH时mm分ss秒 */ public static String YYYY年MM月DD日HH时MM分SS秒 = "yyyy年MM月dd日 HH时mm分ss秒"; /** yyyyMMddHHmmss */ public static String YYYYMMDDHHMMSS = "yyyyMMddHHmmss"; /** yyyyMMddHHmmssSSS */ public static String YYYYMMDDHHMMSSSSS = "yyyyMMddHHmmssSSS"; /** yyMMddHHmmssSSS */ public static String YYMMDDHHMMSSSSS = "yyMMddHHmmssSSS"; /** yyyy-MM-dd HH:mm:ss */ public static String YYYY_MM_DD_HH_MM_SS = "yyyy-MM-dd HH:mm:ss"; } /** * 格式化日期字符串;日期字符串旧格式 = > 日期字符串新格式 * * @param dateStr: 日期字符串,例:20210317102730 * @param oldFmt: 旧日期格式,例:yyyyMMddHHmmss * @param newFmt: 新日期格式,例:yyyy-mm-dd HH:mm:ss * @return: java.lang.String * @author: zxq * @date: 2021/3/17 10:12 上午 */ public static String format(String dateStr, String oldFmt, String newFmt) { Date date = new Date(); try { //先按照原格式转换为时间 date = new SimpleDateFormat(oldFmt).parse(dateStr); } catch (ParseException e) { e.printStackTrace(); } //再将时间转换为对应格式字符串 String str = new SimpleDateFormat(newFmt).format(date); return str; } /** * 格式化日期 :YYYY-MM-DD * * @param date: 日期字符串 * @return: java.lang.String * @author: zxq * @date: 2021/3/17 10:18 上午 */ public static String format(Date date) { return format(date, DateUtils.DATE_FMT.YYYY_MM_DD); } /** * 格式化日期为指定格式,不指定格式则返回:YYYY-MM-DD * * @param date: 时间 * @param fmt: 日期格式; * @return: java.lang.String * @author: zxq * @date: 2021/3/17 10:18 上午 */ public static String format(Date date, String fmt) { if (date == null) { return null; } if (StringUtils.isEmpty(fmt)) { return format(date); } return new SimpleDateFormat(fmt).format(date); } /** * 字符串转日期类型;得到的日期格式为 => YYYY-MM-DD * * @param date: 日期字符串; * @return: java.util.Date * @author: zxq * @date: 2021/3/17 10:47 上午 */ public static Date format(String date) { return format(date, DateUtils.DATE_FMT.YYYY_MM_DD); } /** * 字符串转日期类型;默认日期格式为 => YYYY-MM-DD * * @param date: 时间 * @param fmt: 日期格式;设置的日期格式必须与字符串格式一直,不然会异常 * @return: java.lang.Date * @author: zxq * @date: 2021/3/17 10:18 上午 */ public static Date format(String date, String fmt) { if (date == null) { return null; } if (StringUtils.isEmpty(fmt)) { return format(date); } Date retDate = null; try { SimpleDateFormat sf = new SimpleDateFormat(fmt); retDate = sf.parse(date); } catch (ParseException e) { e.printStackTrace(); } return retDate; } /** * 字符串格式化后转字符串类型;不指定格式则返回:YYYY-MM-DD * * @param date: 需要格式化的时间 * @param fmt: 日期格式;默认:YYYY-MM-DD * @param o: 无效参数,只是为了防止方法重复,可设任意值 * @return: java.lang.String * @author: zxq * @date: 2021/3/18 11:26 上午 */ public static String format(String date, String fmt, Integer o) { return format(format(date, fmt), fmt); } /** * 日期格式化后转日期类型;不指定格式则返回:YYYY-MM-DD * * @param date: 需要格式化的时间 * @param fmt: 日期格式;默认:YYYY-MM-DD * @param o: 无效参数,只是为了防止方法重复,可设任意值 * @return: java.lang.Date * @author: zxq * @date: 2021/3/18 11:26 上午 */ public static Date format(Date date, String fmt, Integer o) { return format(format(date, fmt), fmt); } /** * 获取当前时间;格式为 => YYYY-MM-DD * * @param : * @return: java.lang.String * @author: zxq * @date: 2021/3/17 11:29 上午 */ public static String getCurrentDate() { return format(new Date(), DateUtils.DATE_FMT.YYYY_MM_DD); } /** * 获取当前时间 * * @param fmt: 时间格式;默认 => YYYY-MM-DD * @return: java.lang.String * @author: zxq * @date: 2021/3/17 11:26 上午 */ public static String getCurrentDate(String fmt) { if (StringUtils.isEmpty(fmt)) { return getCurrentDate(); } return format(new Date(), fmt); } /** * 添加时间/减去时间;n年n月n日n时n分n秒 * * @param date: 时间 * @param field: 格式;Calendar.YEAR/MONTH/DATE/HOUR/MINUTE/SECOND * @param n: 时长;正数=加,负数=减 * @return: java.util.Date * @author: zxq * @date: 2021/3/17 12:02 下午 */ public static Date addSubtractDate(Date date, int field, int n) { if (date == null) { return null; } date = format(date, DATE_FMT.YYYY_MM_DD_HH_MM_SS, null); Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.add(field, n); return calendar.getTime(); } /** * 添加时间/减去时间;n年n月n日n时n分n秒 * * @param date: 时间 * @param field: 格式;Calendar.YEAR/MONTH/DATE/HOUR/MINUTE/SECOND * @param n: 时长;正数=加,负数=减 * @return: java.util.Date * @author: zxq * @date: 2021/3/17 12:02 下午 */ public static Date addSubtractDate(String date, int field, int n) { return addSubtractDate(format(date,DATE_FMT.YYYY_MM_DD_HH_MM_SS), field, n); } /** * 获取时间戳 * * @param date: 时间 * @return: long * @author: zxq * @date: 2021/3/18 10:12 上午 */ public static long getTimeStamp(Date date) { Calendar calendar = Calendar.getInstance(); calendar.setTime(date); return calendar.getTimeInMillis(); } /** * 获取当前时间戳 * * @param : * @return: long * @author: zxq * @date: 2021/3/18 10:13 上午 */ public static long getTimeStamp() { return Calendar.getInstance().getTimeInMillis(); } /** * 计算两个时间相差的 年/月/日/时/分/秒 * * @param beginDate: 开始时间 * @param endDate: 结束时间 * @param field: 计算的格式; Calendar.YEAR/MONTH/DATE/HOUR_OF_DAY/MINUTE/SECOND * @return: int * @author: zxq * @date: 2021/3/18 11:06 上午 */ public static int getDateDiff(String beginDate, String endDate, int field) { return getDateDiff(format(beginDate), format(endDate), field); } /** * 计算两个时间相差的 年/月/日/时/分/秒 * * @param beginDate: 开始时间 * @param endDate: 结束时间 * @param field: 计算的格式; Calendar.YEAR/MONTH/DATE/HOUR_OF_DAY/MINUTE/SECOND * @return: int * @author: zxq * @date: 2021/3/18 11:06 上午 */ public static int getDateDiff(Date beginDate, Date endDate, int field) { long day = 0; SimpleDateFormat df = new SimpleDateFormat(DATE_FMT.YYYY_MM_DD_HH_MM_SS); try { /** 计算日,时,分,秒 */ beginDate = df.parse(df.format(beginDate)); endDate = df.parse(df.format(endDate)); /** 计算年,月 */ Calendar begin = Calendar.getInstance(); begin.setTime(beginDate); Calendar end = Calendar.getInstance(); end.setTime(endDate); int bY = begin.get(Calendar.YEAR); int eY = end.get(Calendar.YEAR); int bM = begin.get(Calendar.MONTH); int eM = end.get(Calendar.MONTH); switch (field) { case Calendar.YEAR: day = eY - bY; break; case Calendar.MONTH: day = (eM - bM) + (eY - bY) * 12; break; case Calendar.DATE: day = (endDate.getTime() - beginDate.getTime()) / (24 * 60 * 60 * 1000); break; case Calendar.HOUR_OF_DAY: day = (endDate.getTime() - beginDate.getTime()) / (60 * 60 * 1000); break; case Calendar.MINUTE: day = (endDate.getTime() - beginDate.getTime()) / (60 * 1000); break; case Calendar.SECOND: day = (endDate.getTime() - beginDate.getTime()) / (1000); break; } } catch (Exception e) { e.printStackTrace(); } return (int) day; } /** * 时间戳转日期;格式:YYYY-MM-DD HH:mm:ss * * @param timeStamp: 时间戳 * @return: java.lang.String * @author: zxq * @date: 2021/3/19 9:28 上午 */ public static String timeStamp2Date(String timeStamp) { return timeStamp2Date(timeStamp, DATE_FMT.YYYY_MM_DD_HH_MM_SS); } /** * 时间戳转日期;格式:YYYY-MM-DD HH:mm:ss * * @param timeStamp: 时间戳 * @return: java.lang.String * @author: zxq * @date: 2021/3/19 9:28 上午 */ public static String timeStamp2Date(Long timeStamp) { return timeStamp2Date(String.valueOf(timeStamp), DATE_FMT.YYYY_MM_DD_HH_MM_SS); } /** * 时间戳转日期;默认:YYYY-MM-dd HH:mm:ss * * @param timeStamp: 时间戳 * @param fmt: 日期格式 * @return: java.lang.String * @author: zxq * @date: 2021/3/19 9:27 上午 */ public static String timeStamp2Date(String timeStamp, String fmt) { fmt = StringUtils.isEmpty(fmt) ? DATE_FMT.YYYY_MM_DD_HH_MM_SS : fmt; SimpleDateFormat sdf = new SimpleDateFormat(fmt); String sd = sdf.format(new Date(Long.parseLong(timeStamp))); return sd; } /** * 时间戳转日期;格式:YYYY-MM-DD HH:mm:ss * * @param timeStamp: 时间戳 * @param o: 无效参数,只是为了防止方法重复,可设任意值 * @return: java.util.Date * @author: zxq * @date: 2021/3/19 11:11 上午 */ public static Date timeStamp2Date(String timeStamp, Integer o) { return format(timeStamp2Date(timeStamp, DATE_FMT.YYYY_MM_DD_HH_MM_SS), DATE_FMT.YYYY_MM_DD_HH_MM_SS); } /** * 时间戳转日期;格式:YYYY-MM-DD HH:mm:ss * * @param timeStamp: 时间戳 * @param o: 无效参数,只是为了防止方法重复,可设任意值 * @return: java.util.Date * @author: zxq * @date: 2021/3/19 11:11 上午 */ public static Date timeStamp2Date(Long timeStamp, Integer o) { return format(timeStamp2Date(String.valueOf(timeStamp), DATE_FMT.YYYY_MM_DD_HH_MM_SS), DATE_FMT.YYYY_MM_DD_HH_MM_SS); } /** * 时间戳转日期;默认:YYYY-MM-dd HH:mm:ss * * @param timeStamp: 时间戳 * @param fmt: 日期格式 * @return: java.util.Date * @author: zxq * @date: 2021/3/19 11:08 上午 */ public static Date timeStamp2Date(Long timeStamp, String fmt) { fmt = StringUtils.isEmpty(fmt) ? DATE_FMT.YYYY_MM_DD_HH_MM_SS : fmt; SimpleDateFormat sdf = new SimpleDateFormat(fmt); String sd = sdf.format(new Date(timeStamp)); return format(sd, fmt); } /** * 时间设置成:2021-02-02 23:59:59 * * @param date: 时间 * @param o: 无效参数,只是为了防止方法重复,可设任意值 * @return: java.util.Date * @author: zxq * @date: 2021/3/19 10:28 上午 */ public static Date date235959(Date date, Integer o) { return format(date235959(date), DATE_FMT.YYYY_MM_DD_HH_MM_SS); } /** * 时间设置成:2021-02-02 23:59:59 * * @param date: 时间 * @param o: 无效参数,只是为了防止方法重复,可设任意值 * @return: java.util.Date * @author: zxq * @date: 2021/3/19 10:28 上午 */ public static Date date235959(String date, Integer o) { return format(date235959(date), DATE_FMT.YYYY_MM_DD_HH_MM_SS); } /** * 时间设置成:2021-02-02 23:59:59 * * @param date: 时间 * @return: java.lang.String * @author: zxq * @date: 2021/3/19 10:27 上午 */ public static String date235959(String date) { return date235959(format(date, DATE_FMT.YYYY_MM_DD_HH_MM_SS)); } /** * 时间设置成:2021-02-02 23:59:59 * * @param date: 时间 * @return: java.lang.String * @author: zxq * @date: 2021/3/19 10:27 上午 */ public static String date235959(Date date) { SimpleDateFormat sf = new SimpleDateFormat(DATE_FMT.YYYY_MM_DD_HH_MM_SS); Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.set(Calendar.HOUR_OF_DAY, 23); calendar.set(Calendar.MINUTE, 59); calendar.set(Calendar.SECOND, 59); String time = sf.format(calendar.getTime()); return time; } /** * 指定日期是星期几 * * @param date: 日期 * @return: java.lang.String * @author: zxq * @date: 2021/3/19 11:27 上午 */ public static String getWeek(String date) { return getWeek(format(date)); } /** * 指定日期是星期几 * * @param date: 日期 * @return: java.lang.String * @author: zxq * @date: 2021/3/19 11:26 上午 */ public static String getWeek(Date date) { SimpleDateFormat sdf = new SimpleDateFormat(DATE_FMT.EEEE); return sdf.format(date); } /** * 比较时间 date1是否大于date2; true=大于; false=小于等于 * * @param date1: 日期1 * @param date2: 日期2 * @param fmt: 日期格式;默认:YYYY-MM-dd HH:mm:ss * @return: boolean * @author: zxq * @date: 2021/3/19 11:38 上午 */ public static boolean after(Date date1, Date date2, String fmt) { fmt = StringUtils.isEmpty(fmt) ? DATE_FMT.YYYY_MM_DD_HH_MM_SS : fmt; return after(format(date1, fmt), format(date2, fmt), fmt); } /** * 比较时间 date1是否大于date2; true=大于; false=小于等于 * * @param date1: 日期1 * @param date2: 日期2 * @param fmt: 日期格式;默认:YYYY-MM-dd HH:mm:ss * @return: boolean * @author: zxq * @date: 2021/3/19 11:38 上午 */ public static boolean after(String date1, Date date2, String fmt) { fmt = StringUtils.isEmpty(fmt) ? DATE_FMT.YYYY_MM_DD_HH_MM_SS : fmt; return after(date1, format(date2, fmt), fmt); } /** * 比较时间 date1是否大于date2; true=大于; false=小于等于 * * @param date1: 日期1 * @param date2: 日期2 * @param fmt: 日期格式;默认:YYYY-MM-dd HH:mm:ss * @return: boolean * @author: zxq * @date: 2021/3/19 11:38 上午 */ public static boolean after(Date date1, String date2, String fmt) { fmt = StringUtils.isEmpty(fmt) ? DATE_FMT.YYYY_MM_DD_HH_MM_SS : fmt; return after(format(date1, fmt), date2, fmt); } /** * 比较时间 date1是否大于date2; true=大于; false=小于等于 * * @param date1: 日期1 * @param date2: 日期2 * @param fmt: 日期格式;默认:YYYY-MM-dd HH:mm:ss * @return: boolean * @author: zxq * @date: 2021/3/19 11:38 上午 */ public static boolean after(String date1, String date2, String fmt) { fmt = StringUtils.isEmpty(fmt) ? DATE_FMT.YYYY_MM_DD_HH_MM_SS : fmt; Date d1 = format(date1, fmt); Date d2 = format(date2, fmt); return d1.after(d2); } /** * 比较时间 date1是否小于date2; true=小于; false=大于等于 * * @param date1: 日期1 * @param date2: 日期2 * @param fmt: 日期格式;默认:YYYY-MM-dd HH:mm:ss * @return: boolean * @author: zxq * @date: 2021/3/19 11:38 上午 */ public static boolean before(Date date1, Date date2, String fmt) { fmt = StringUtils.isEmpty(fmt) ? DATE_FMT.YYYY_MM_DD_HH_MM_SS : fmt; return after(format(date1, fmt), format(date2, fmt), fmt); } /** * 比较时间 date1是否小于date2; true=小于; false=大于等于 * * @param date1: 日期1 * @param date2: 日期2 * @param fmt: 日期格式;默认:YYYY-MM-dd HH:mm:ss * @return: boolean * @author: zxq * @date: 2021/3/19 11:38 上午 */ public static boolean before(String date1, Date date2, String fmt) { fmt = StringUtils.isEmpty(fmt) ? DATE_FMT.YYYY_MM_DD_HH_MM_SS : fmt; return after(date1, format(date2, fmt), fmt); } /** * 比较时间 date1是否小于date2; true=小于; false=大于等于 * * @param date1: 日期1 * @param date2: 日期2 * @param fmt: 日期格式;默认格式:YYYY-MM-dd HH:mm:ss * @return: boolean * @author: zxq * @date: 2021/3/19 11:38 上午 */ public static boolean before(Date date1, String date2, String fmt) { fmt = StringUtils.isEmpty(fmt) ? DATE_FMT.YYYY_MM_DD_HH_MM_SS : fmt; return after(format(date1, fmt), date2, fmt); } /** * 比较时间 date1是否小于date2; true=小于; false=大于等于 * * @param date1: 日期1 * @param date2: 日期2 * @param fmt: 日期格式;默认格式:YYYY-MM-dd HH:mm:ss * @return: boolean * @author: zxq * @date: 2021/3/19 11:38 上午 */ public static boolean before(String date1, String date2, String fmt) { fmt = StringUtils.isEmpty(fmt) ? DATE_FMT.YYYY_MM_DD_HH_MM_SS : fmt; Date d1 = format(date1, fmt); Date d2 = format(date2, fmt); return d1.before(d2); } /** * 获取两个时间间隔n分的时间集合 * * @param startHour: 开始时间 * @param endHour: 结束时间 * @param n: 间隔时间 * @return: java.util.List<java.lang.String> * @author: zxq * @date: 2021/3/19 4:54 下午 */ public static List<String> spiltTimeByHour(Date startHour, Date endHour, int n) { return spiltTimeByHour(format(startHour, DATE_FMT.HH_MM), format(endHour, DATE_FMT.HH_MM), n); } /** * 获取两个时间间隔n分的时间集合 * * @param startHour: 开始时间 格式:HH:mm * @param endHour: 结束时间 格式:HH:mm * @param n: 间隔时间 * @return: java.util.List<java.lang.String> * @author: zxq * @date: 2021/3/19 4:54 下午 */ public static List<String> spiltTimeByHour(String startHour, String endHour, int n) { List<String> retTime = new ArrayList<>(); try { SimpleDateFormat sdf = new SimpleDateFormat(DATE_FMT.HH_MM); long difTime = (sdf.parse(endHour).getTime() - sdf.parse(startHour).getTime()) / (1000); if (difTime < 0) { difTime = (sdf.parse("24:00").getTime() - sdf.parse(startHour).getTime()) / (1000); difTime += (sdf.parse(endHour).getTime() - sdf.parse("00:00").getTime()) / (1000); } else { difTime = (sdf.parse(endHour).getTime() - sdf.parse(startHour).getTime()) / (1000); } int ln = Math.abs(Integer.valueOf(String.valueOf((difTime / 60 / n)))); Calendar c = Calendar.getInstance(); c.setTime(sdf.parse(startHour)); for (int i = 1; i < ln; i++) { c.add(Calendar.MINUTE, n); retTime.add(sdf.format(c.getTime())); } //结束时间 retTime.add(endHour); } catch (ParseException e) { e.printStackTrace(); } Collections.sort(retTime); return retTime; } public static void main(String[] args) { // System.out.println(addSubtractDate(new Date(), Calendar.YEAR, 1)); // System.out.println(addSubtractDate(new Date(), Calendar.MONTH, 1)); // System.out.println(addSubtractDate(new Date(), Calendar.DATE, 1)); // System.out.println(format(addSubtractDate(new Date(), Calendar.HOUR, 3), DATE_FMT.YYYY_MM_DD_HH_MM_SS)); // System.out.println(format(addSubtractDate(new Date(), Calendar.MINUTE, 3), DATE_FMT.YYYY_MM_DD_HH_MM_SS)); // System.out.println(format(addSubtractDate(new Date(), Calendar.SECOND, 3), DATE_FMT.YYYY_MM_DD_HH_MM_SS)); // System.out.println(getTimeStamp(new Date())); // System.out.println(getTimeStamp()); // System.out.println(getDateDiff(format("2000-03-18 10:42:50", DATE_FMT.YYYY_MM_DD_HH_MM_SS), format("2021-03-18 10:42:50", DATE_FMT.YYYY_MM_DD_HH_MM_SS), Calendar.YEAR)); // System.out.println(getDateDiff(format("2020-03-18 10:42:50", DATE_FMT.YYYY_MM_DD_HH_MM_SS), format("2021-04-18 10:42:50", DATE_FMT.YYYY_MM_DD_HH_MM_SS), Calendar.MONTH)); // System.out.println(getDateDiff(format("2021-03-18 10:42:50", DATE_FMT.YYYY_MM_DD_HH_MM_SS), format("2021-04-22 10:42:50", DATE_FMT.YYYY_MM_DD_HH_MM_SS), Calendar.DATE)); // System.out.println(getDateDiff(format("2021-03-18 10:42:50", DATE_FMT.YYYY_MM_DD_HH_MM_SS), format("2021-03-18 16:42:50", DATE_FMT.YYYY_MM_DD_HH_MM_SS), Calendar.HOUR_OF_DAY)); // System.out.println(getDateDiff(format("2021-03-18 10:42:50", DATE_FMT.YYYY_MM_DD_HH_MM_SS), format("2021-03-18 10:49:50", DATE_FMT.YYYY_MM_DD_HH_MM_SS), Calendar.MINUTE)); // System.out.println(getDateDiff(format("2021-03-18 10:42:50", DATE_FMT.YYYY_MM_DD_HH_MM_SS), format("2021-03-18 10:42:55", DATE_FMT.YYYY_MM_DD_HH_MM_SS), Calendar.SECOND)); // System.out.println(timeStamp2Date(1616053922151L)); // System.out.println(timeStamp2Date("1616053922151")); // System.out.println(timeStamp2Date(String.valueOf(1616053922151L), DATE_FMT.YYYY年MM月DD日HH时MM分SS秒)); // System.out.println(timeStamp2Date(1616053942151L,0)); // System.out.println(timeStamp2Date("1616053922151",0)); // System.out.println(timeStamp2Date(1616054922151L, DATE_FMT.YYYY年MM月DD日HH时MM分SS秒)); // System.out.println(date235959(new Date())); // System.out.println(date235959("2021-03-11 12:12:99")); // System.out.println(date235959(new Date(),0)); // System.out.println(date235959("2021-03-31 12:12:99",0)); // System.out.println(getWeek(new Date())); // System.out.println(getWeek("2021-03-20")); // String str1 = "2021-03-18 11:33:00"; // String str2 = "2021-03-18 11:33:01"; // Date date1 = format("2021-03-19 11:33:01", DATE_FMT.YYYY_MM_DD_HH_MM_SS); // Date date2 = format("2021-03-19 11:33:01", DATE_FMT.YYYY_MM_DD_HH_MM_SS); // System.out.println(after(str1, str2, null)); // System.out.println(after(date1, date2, null)); // System.out.println(after(str1, date1, null)); // System.out.println(after(date2, str2, null)); // System.out.println(); // System.out.println(before(str1, str2, null)); // System.out.println(before(date1, date2, null)); // System.out.println(before(str1, date1, null)); // System.out.println(before(date2, str2, null)); // List<String> lst = spiltTimeByHour("09:30", "13:00", 10); // lst.forEach(s -> { // System.out.println("1==> "+s); // }); // List<String> lst2 = spiltTimeByHour(format("2021-03-19 09:30:00", DATE_FMT.YYYY_MM_DD_HH_MM_SS), format("2021-03-19 13:00:00", DATE_FMT.YYYY_MM_DD_HH_MM_SS), 10); // lst2.forEach(s -> { // System.out.println("2==> "+s); // }); } }
未完,待续...
会持续更新!!