美文网首页
java DateUtil 日期工具类

java DateUtil 日期工具类

作者: 简陌刀丶阿吉 | 来源:发表于2023-01-31 10:56 被阅读0次
    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;
        }
    }
    

    相关文章

      网友评论

          本文标题:java DateUtil 日期工具类

          本文链接:https://www.haomeiwen.com/subject/nynvhdtx.html