简单日期格式化类SimpleDateFormat
前言
java 基础复习中…
开发中经常会收到字符串的时间,需要转成Date日期对象。
一、简单日期格式化类的使用
DateFormat作用:
1.可以把“日期对象”或者“时间毫秒值”格式化成我们喜欢的时间形式。(格式化时间)
2.可以把字符串的时间形式解析成日期对象。(解析字符串时间)
DateFormat是一个抽象类,不能直接使用,要找它的子类:SimpleDateFormat
构造器:public SimpleDateFormat(): 指定时间的格式创建简单日期格式化对象。
构造器:public SimpleDateFormat(String pattern): 指定时间的格式创建简单日期格式化对象。
方法:
-- public String format(Date date):可以把日期对象格式化成我们喜欢的时间形式,返回的是字符串!
-- public String format(Object time):可以把时间毫秒值格式化成我们喜欢的时间形式,返回的是字符串!
-- public Date parse(String date) throws ParseException:把字符串的时间解析成日期对象
代码如下(示例):
请问 “2019-11-04 09:30:30” 往后 1天15小时,30分29s后的时间是多少。
- Date日期对象 -> 格式化成 -> 喜欢的字符串时间形式。
- 时间毫秒值 -> 格式化成 -> 喜欢的字符串时间形式。
- 字符串的时间形式 -> 解析成 -> Date日期对象。
public class SimpleDateFormatDemo03 {
public static void main(String[] args) throws ParseException {
// 1、把字符串时间解析成日期对象(重点)
String timeStr = "2019-11-04 09:30:30";
// 重点注意:格式化的时间形式必须与被解析的时间形式完全一致,否则解析失败而报错!
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date d = sdf.parse(timeStr);
// 2、得到当前所日期对象的时间毫秒值往后走 1天15小时,30分29s
long time = d.getTime() + (24L*60*60 + 15*60*60 + 30*60 + 29)*1000;
// 3、格式化输出
System.out.println(sdf.format(time));
}
}