1. 程式人生 > >Java之Date類,DateFormat類,SimpleDateFormat詳解

Java之Date類,DateFormat類,SimpleDateFormat詳解

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);
		
	}
}

在這裡插入圖片描述