Java之Date類,DateFormat類,SimpleDateFormat詳解
阿新 • • 發佈:2018-12-15
java.util.Date
Date
日期類 不過很多方法都已經過時了 1.構造方法有兩種 有參(Long) 無參 2.方法主要有兩種 setTime 和 getTime兩種
import java.util.Date;
public class Demo6_Date {
public static void main(String[] args) {
//demo1();
//demo2();
Date d1 = new Date();
d1.setTime(1000); //設定毫秒值,改變時間物件
System.out.println(d1);
}
public static void demo2() {
Date d1 = new Date();
System.out.println(d1.getTime()); //通過時間物件獲取毫秒值
System.out.println(System.currentTimeMillis()); //通過系統類的方法獲取當前時間毫秒值
}
public static void demo1() {
Date d1 = new Date(); //如果沒有傳引數代表的是當前時間
System.out.println(d1);
Date d2 = new Date(0); //如果構造方法中引數傳為0代表的是1970年1月1日
System.out.println(d2); //通過毫秒值建立時間物件
}
}
import java.text.DateFormat; DateFormat是一個抽象類 所以無法例項化物件 只能通過其子類SimpleDateFormat 或者通過其底層來使用
SimpleDateFormat
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class Demo7_SimpleDateFormat {
/**
* * A:DateFormat類的概述
* DateFormat 是日期/時間格式化子類的抽象類,它以與語言無關的方式格式化並解析日期或時間。是抽象類,所以使用其子類SimpleDateFormat
* B:SimpleDateFormat構造方法
* public SimpleDateFormat()
* public SimpleDateFormat(String pattern)
* C:成員方法
* public final String format(Date date)
* public Date parse(String source)
* @throws ParseException `在這裡插入程式碼片`
*/
public static void main(String[] args) throws ParseException {
//demo1();
//demo2();
//demo3();
//將時間字串轉換成日期物件
String str = "2000年08月08日 08:08:08";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
Date d = sdf.parse(str); //將時間字串轉換成日期物件
System.out.println(d);
}
public static void demo3() {
Date d = new Date(); //獲取當前時間物件
//Date d2 = new Date(System.currentTimeMillis());
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");//建立日期格式化類物件
System.out.println(sdf.format(d)); //將日期物件轉換為字串
}
public static void demo2() {
Date d = new Date(); //獲取當前時間物件
SimpleDateFormat sdf = new SimpleDateFormat(); //建立日期格式化類物件
System.out.println(sdf.format(d)); //88-6-6 下午9:31
}
public static void demo1() {
//DateFormat df = new DateFormat(); //DateFormat是抽象類,不允許例項化
//DateFormat df1 = new SimpleDateFormat();
DateFormat df1 = DateFormat.getDateInstance(); //相當於父類引用指向子類物件,右邊的方法返回一個子類物件
}
}
一個小程式求自己的出生天數
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class Main{
public static void main(String args[]) throws ParseException {
String start = "1999-12-28";
String end = "2018-10-16";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date d1 = sdf.parse(start); //解析成date物件
Date d2 = sdf.parse(end);
Long l = d2.getTime()-d1.getTime(); //通過getTime 計算出毫秒數
Long days = l/1000/60/60/24; //算出天數
System.out.println("出身天數:");
System.out.println(days);
}
}