Date 类的总结。含代码。

本文介绍Java中Date类、DateFormat类及SimpleDateFormat类的使用方法,包括日期对象的创建、日期格式化、日期与毫秒数的转换等。并提供实例演示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一,Date类

1,Date类 对象的创建:

Date dateNow  = new Date();		//创建当前时间的日期对象。
Date datewhen = new Date(long millis);//创建从1970-1-1 00:00:00向后millis 毫秒的日期。

2,Date类的主要方法。

int compareTo(Date anotherDate)	//相等返回0,在anotherDate之前返回负数,在anotherDate之后返回正数。
long getTime()				//返回从1970.1.1 00:00:00 至该日期类对象的毫秒数。
void setTime(long millis)		//设置该日期对象为从1970.1.1 00:00:00向后millis毫秒的时刻。

二,DateFormat类

DateFormat类主要用于将Date 类对象 转换成多种格式的日期字符串。

1,主要字段

SHORT		LONG		FULL	

2,DateFormat类 对象的创建。(通过其众多静态方法)

DateFormat df = DateFormat.getInstance();// 12-12-6 下午4:02
DateFormat df = DateFormat.getDateTimeInstance();// 2012-12-6 15:40:57
DateFormat df = DateFormat.getDateInstance();// 2012-12-6
DateFormat df = DateFormat.getTimeInstance();// 18:05:15
DateFormat df = DateFormat.getDateInstance(DateFormat.SHORT);// 12-12-6
DateFormat df = DateFormat.getTimeInstance(DateFormat.SHORT);// 下午6:05
DateFormat df = DateFormat.getDateInstance(DateFormat.LONG);// 2012年12月6日
DateFormat df = DateFormat.getTimeInstance(DateFormat.LONG);// 下午06时05分15秒
DateFormat df = DateFormat.getDateInstance(DateFormat.FULL);// 2012年12月6日 星期四
DateFormat df = DateFormat.getTimeInstance(DateFormat.FULL);//下午06时05分15秒 CST
DateFormat df = DateFormat.getDateTimeInstance(DateFormat.FULL, DateFormat.SHORT);// 2012年12月6日    星期四     下午4:35

3,DateFormat 类的主要方法。

String format(Date date)   //将一个Date对象格式化为  日期 或者 时间 或者 日期时间 的 字符串。(格式由自身创建时确定)
2 中的  获得DateFormat 对象的 众多静态方法。
Date parse(String source) //将该字符串解析成 Date 类对象返回。无法解析时抛出ParseException异常
用法示例:
	public static void show0() {
  	Date date = new Date();
  	DateFormat df = DateFormat.getInstance();// 12-12-6 下午4:02
  	String str = df.format(date);
  	System.out.println(str);
 }

三,SimpleDateFormat类。

DateFormat类主要用于将Date 类对象 转换成 自定义 格式的日期字符串。

1,SimpleDateFormat类 对象的创建。

DateFormat df = new SimpleDateFormat("MM月-dd日----yyyy年");// 12月-06日----2012年

2,SimpleDateFormat类 对象的主要方法

String format(Date date)//将一个Date对象格式化为  日期 或者 时间 或者 日期时间 的 字符串。(格式由自身创建时确定)
Date parse(String source) //将该字符串解析成 Date 类对象返回。无法解析时抛出ParseException异常。

四,日期和毫秒数的相互转换。

1,日期转换为毫秒数。

可以使用Date 对象的long getTime()方法。

2,毫秒数转换为日期。

方法一:new Date(long millis);//通过Date构造方法转换
方法二:使用Date对象的 Date setTime(long millis);方法设置。

程序:

package DataDemo;

import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class DateDemo2 {

	/**
	 * 主要涉及的类:  Date(日期类)  DateFormat(日期格式器类)   SimpleDateFormat(自定义日期格式器类)
	 * 
	 * 
	 * getInstance() 默认为 : 2012-12-6 15:40:57 getDateInstance() 默认为 : 2012-12-6
	 * getDateTimeInstance() 默认为 : 2012-12-6 15:40:57
	 * 
	 * 
	 * Date: SHORT : 2012-12-6 LONG : 2012年12月6日 FULL : 2012年12月6日 星期四
	 * 
	 * Time: SHORT : 下午4:04 LONG : 下午04时05分15秒 FULL : 下午04时06分33秒 CST
	 * 
	 * 时间格式器的四种获取方法: 1, DateFormat df = DateFormat.getInstance(); 2, DateFormat
	 * df = DateFormat.getDateInstance(); 3, DateFormat df =
	 * DateFormat.getDateTimeInstance(); 4, DateFormat df = new
	 * SimpleDateFormat("自定义格式"); 将Date类 对象 转换成格式化字符串 String str =
	 * df.format(Date date); 将df格式的字符串日期 转换成Date类 日期。无法解析时 ,抛ParseException异常。
	 * Date date2 = df.parse(str);
	 * 
	 * @throws ParseException
	 * 
	 *     将 日期对象 变为毫秒数(从1970 年 1 月 1 日 00:00:00至日期对象):date.getTime()
	 * 
	 *     将 毫秒数 变为 日期类对象。  new Date(long millis);
	 * 
	 */
	public static void main(String[] args) throws ParseException {
		 show0();
		 show_0();
		 show1();
		 show_1();
		 show2();
		 show_2();
		 show3();
		 show_3();
		 show4();
		 show_4();
		 show_9();
//		Date date = new Date();
//		System.out.println("date : "+date);
//		long mil = dateToMillis(date);
//		System.out.println(mil);
//		Date date2 = millisToDate(mil);
//		System.out.println("date2 : "+date2);
		
	}
	public static Date millisToDate(long mil) {
		return new Date(mil);//通过构造函数转换。
	}
	public static Date millisToDate2(long mil) {
		Date date = new Date();
		date.setTime(mil);
		return date;
	}
	// 将日期转换成毫秒数。
	public static long dateToMillis(Date date) {
		return date.getTime();
	}

	public static void show() throws ParseException {
		Date date = new Date();
		System.out.println("date :" + date);
		DateFormat df = new SimpleDateFormat("MM月-dd日----yyyy年");// 12月-06日----2012年
		// 将日期转换成df格式的字符串。
		String str = df.format(date);
		System.out.println("str : " + str);
		// 将df格式的字符串日期 转换成Date类 日期。
		Date date2 = df.parse(str);
		System.out.println("date2:  " + date2);
	}

	public static void show_9() {
		Date date = new Date();
		DateFormat df = DateFormat.getDateTimeInstance(DateFormat.FULL, DateFormat.SHORT);// 2012年12月6日    星期四     下午4:35
																							 
		String str = df.format(date);
		System.out.println(str);
	}


	public static void show_4() {
		Date date = new Date();
		DateFormat df = DateFormat.getTimeInstance(DateFormat.FULL);//下午06时05分15秒 CST
		String str = df.format(date);
		System.out.println(str);
	}
	public static void show4() {
		Date date = new Date();
		DateFormat df = DateFormat.getDateInstance(DateFormat.FULL);// 2012年12月6日 星期四
																	
		String str = df.format(date);
		System.out.println(str);
	}

	public static void show_3() {
		Date date = new Date();
		DateFormat df = DateFormat.getTimeInstance(DateFormat.LONG);// 下午06时05分15秒
		String str = df.format(date);
		System.out.println(str);
	}
	public static void show3() {
		Date date = new Date();
		DateFormat df = DateFormat.getDateInstance(DateFormat.LONG);// 2012年12月6日
		String str = df.format(date);
		System.out.println(str);
	}

	public static void show_2() {
		Date date = new Date();
		DateFormat df = DateFormat.getTimeInstance(DateFormat.SHORT);// 下午6:05
		String str = df.format(date);
		System.out.println(str);
	}
	public static void show2() {
		Date date = new Date();
		DateFormat df = DateFormat.getDateInstance(DateFormat.SHORT);// 12-12-6
		String str = df.format(date);
		System.out.println(str);
	}

	public static void show_1() {
		Date date = new Date();
		DateFormat df = DateFormat.getTimeInstance();// 18:05:15
		String str = df.format(date);
		System.out.println(str);
	}
	public static void show1() {
		Date date = new Date();
		DateFormat df = DateFormat.getDateInstance();// 2012-12-6
		String str = df.format(date);
		System.out.println(str);
	}

	public static void show_0() {
		Date date = new Date();
		DateFormat df = DateFormat.getDateTimeInstance();// 2012-12-6 15:40:57
		String str = df.format(date);
		System.out.println(str);
	}
	public static void show0() {
		Date date = new Date();
		DateFormat df = DateFormat.getInstance();// 12-12-6 下午4:02
		String str = df.format(date);
		System.out.println(str);
	}

}


 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值