java DateUtil 日期工具类

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

/**
 * 日期工具
 * @author 简陌刀丶阿吉
 *
 */
 public class DateUtil {

    /**
     * 字符串转Date类型
     * @param dateStr 日期字符串
     * @param pattern 日期正则
     * @return 根据正则和日期的类型,返回Date类型
     * 
     * Demo: 
     *   Date returnDate = DateUtil.parseDate("20230201", "yyyyMMdd");
     * 
     */
    public static Date parseDate(String dateStr, String pattern) {
        SimpleDateFormat dateFormat = new SimpleDateFormat(pattern);
        Date date;
        try {
            date = dateFormat.parse(dateStr);
        } catch (ParseException e) {
            throw  new RuntimeException("日期转换错误");
        }
        return date;
    }
    
    /**
     * Date类型转字符串
     * @param date Date类型
     * @param pattern 日期正则
     * @return 根据正则和日期的类型,返回字符串类型
     * 
     *  Demo: 
     *   String returnStringDate = DateUtil.dateFormate(new Date(), "yyyMMdd");
     */
    public static String dateFormate(Date date, String pattern) {
        if(date == null) {
            return "";
        }
        SimpleDateFormat dateFormat = new SimpleDateFormat(pattern);
        String dateStr = dateFormat.format(date);
        
        return dateStr;
    }
    
    /**
     * 将传入的日期加上设置的天数
     * @param date 被设置的日期
     * @param days 加上或者减去的天数
     * @return 返回计算后的日期,跨月计算也可以。
     * 
     * Demo:
     *  Date returnDate = DateUtil.increaseDays(new Date(), 30);
     */
    public static Date increaseDays(Date date, int days) {
        if(date == null) {
            return null;
        }
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(date);
        calendar.add(Calendar.DAY_OF_MONTH, days);
        return calendar.getTime();
    }
    
    /**
     * 判断是否是周六或周日
     * @param date 需要判断的日期
     * @return true: 是周末; false:不是周末
     * 
     * Demo: 
     *   Boolean returnFlag = DateUtil.isSaturdayOrSunday(new Date());
     * 
     */
    public static boolean isSaturdayOrSunday(Date date) {
        if (date == null) {
            return false;
        }
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(date);
        if(calendar.get(Calendar.DAY_OF_WEEK) == Calendar.SUNDAY || calendar.get(Calendar.DAY_OF_WEEK) == Calendar.SATURDAY) {
            return true;
        }
    
        return false;
    }
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容