Data類
java.util.Date:表示日期和時間的類
類Date 表示特定的瞬間,精確到毫秒。
毫秒:千分之一秒 1000毫秒=1秒
把日期轉換成毫秒:
- 當前的日期:2019-07-18
- 時間原點(0毫秒):1970-01-01 00:00:00(英國格林威治)
- 就是計算當前日期到時間原點之間一共經歷了多少毫秒
注意:
中國屬於東八區,會把時間增加8個小時
- 1970-01-01 08:00:00
把毫秒轉換為日期:
- 1天 = 24*60*60 = 86400秒 = 86400*1000=86400000毫秒
使用:
Date類的帶參數構造方法
Date date = new Date(); Date();//獲取當前系統的時間和日期 --------- Date date = new Date(0L); Date(long date);//傳遞毫秒值,把毫秒值轉化成Date日期 ----------- Date date = new Date(); long time = date.getTime(); long getTime() 把日期轉換成毫秒(相當於System.currentTimeMillis()方法) 返回自1970年1月1日 00-00-00GMT 以來此Date 對象表示的毫秒數。
DateFormat類
java.text.DateFormat:是日期/時間格式化子類的抽象類
作用:
- 格式化(也就是日期 -> 文本),解析(文本->日期)
成員方法:
- String format(Date date) 按照指定的模式,把Date日期,格式化為符合模式的字符串
- Date parse(String source) 把符合模式的字符串,解析為Date日期
- DateFormat類是一個抽象類,無法直接創建對象使用,可以使用DateFormat類的子類
java.text.SimpleDateFormat extends DateFormat
使用DateFormat類中的方法format,把日期格式化為文本
使用步驟:
- 創建simpleDateFormat對象,構造方法中傳遞指定的模式
- 調用SimpleDateFormat對象中的方法format,按照構造方法指定的模式,把Date日期格式化為符合模式的字符串(文本)
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH時mm分ss秒");
Date date = new Date(); String d = sdf.format(date);
Calendar類
介紹:
java.util.Calendar類;日歷類
- Calendar類是一個抽象類,里邊提供了很多操作日歷字段的方法(YEAR、MONTH、DAY_OF_MONTH、HOUR)
- Calendar類無法直接創建對象使用,里邊有一個靜態方法叫getInstance(),該方法返回了Calendar類的子類對象
- static Calendar getInstance() 使用默認時區和語言環境獲得一個日歷。
Calendar c = Calendar.getInstance();//多態
Calendar類的常用成員方法:
- public int get(int field);返回給定日歷字段的值。
- public void set(int field,int value);將給定的日歷字段設置為給定值
- public abstract void add(int field, int amount);根據日歷的規則,為給定的日歷字段添加或減去指定的時間量。
- public Data getTime();返回一個表示次Calendar時間值(從歷元到現在的毫秒偏移量)的Date對象。
//public int get(int field);返回給定日歷字段的值。
Calendar c = Calendar.getInstance();
int year = c.get(Calendar.YEAR); int month = c.get(Calendar.MONTH); ///public void set(int field,int value);將給定的日歷字段設置為給定值 //設置年為9999 //設置月為9月 c.set(Calendar.YEAR,9999); c.set(Calendar.MONTH,9); //增加年 c.add(Calendar.YEAR,2); //把日歷對象,轉換為日期對象 Date date=c.getTime();