一、概念
在程序中日期的數據往往會使用字符串來表示,如果需要進行日期相關的運算,為了操作方便我們會將字符串的日期轉換為日期類型。當要將日期信息展示給用戶時,往往我們又會將日期對象數據轉換為有格式的日期字符串。要完成日期與字符串的相互轉換,我們就可以借助DateFormat類了 。
注意:DateFormat本身是一個抽象類,在創建對象使用的時候,一般使用其子類SimpleDateFormat。
二、作用
- 把String類型轉換為Date類型
- 把Date類型轉換為String類型
三、SimpleDateFormat
3.1、構造方法
SimpleDateFormat(String pattern) // 給定日期模板創建日期格式化對象
日期模板本身就是一個字符串,有一些特殊意義的字符組成,如y表示年,M表示月,d表示日,H表示時,m表示分,s表示秒等,這些在API文檔中有做定義。
定義模板時,將日期時間數據用對應字母表示就可以,如
2021-05-14 16:00:00 // yyyy-MM-dd HH:mm:ss 2021/05/14 16:00:00 // yyyy/MM/dd HH:mm:ss 2021年05月14日 16:00:00 // yyyy年MM月dd日 HH:mm:ss
3.2、format
format是一個成員方法,用來格式化,將日期對象格式轉化為字符串
public String format(Date d)
案例如下
public class DTest { public static void main(String[] args) throws ParseException { SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date date = new Date(); String d = df.format(date); System.out.println(d); // 2021-05-14 16:41:41 } }
3.3、parse
parse是一個成員方法,用來解析,將字符串解析為日期對象
public Date parse(String s)
案例如下
public class DTest { public static void main(String[] args) throws ParseException { SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String dStr = "2021-05-14 00:00:00"; Date date = df.parse(dStr); System.out.println(date.getTime()); // 1620921600000 } }