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 日期工具类
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 在之前的学习中,我写过一篇关于字符串格式化的,就主要设计到了时间以及日期的各种格式化显示的设置,其主要时通过Str...
- 1、工具类 Java中提供了大量的类和接口完成特定的功能。每个类都会有自己的属性和行为(功能)。但是这些功能还是不...