笔记19 日期类

package test0910;

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

/*
 * 		1、常用类中的日期与时间的管理类:  Date
 * 			1) 它来源于 java.util.Date;
 * 
 * 			2) 它用来管理日期与时间。但它管理的日期和时间是指一个时刻(即:静止的时间)
 * 
 * 			3) 它的常用构造器:
 * 				Date()  当使用默认构造器构造对象时,则它对应的日期时间与系统时钟是一致。
 * 				Date(long time)  当使用带参数的构造器时,则它构造的对象对应着指定的时间。
 * 		
 * 			注意: 在java语言中,基准时间以 1970-1-1 00:00:00 为起始点。
 * 				另外,在计算机中,时间以毫秒为基本单位。1秒 == 1000毫秒。
 * 
 * 			4) 常用方法:
 * 				long getTime()
 * 				d1.after(d3);
 * 				d1.before(d3);
 * 
 * 		2、日期与时间的格式化:
 * 			1) System.out.printf("%t?" , new Date() );
 * 
 * 			2) String类的format()方法实现格式化.
 * 				注意: String.format()方法的使用方式与 printf()的方式完全一样。
 * 				只不过,printf()将格式化后的结果打印在屏幕,而String.format()将结果以字符串反馈。
 * 
 * 			3) DateFormat类实现格式化
 * 
 * 			4) SimpleDateFormat类实现格式化。
 * 		
 * 		
 * 		DateFormat常用类实现日期时间的格式化, 另外,它还可以将日期型字符串还原为Date类的对象。 
 * 
 *  		1)它来源于 java.text.DateFormat;
 * 			2)它有两个功能:
 * 				a) 格式化日期时间。
 * 				b) 将日期时间型字符串还原为Date类的对象。
 * 
 * 			说明:当某个语句写完后,没有语法错误。但,编译时报错且错误信息为: "Unhandled exception type XXXX"
 * 				表示有异常需要进行处理。
 * 			
 *		SimpleDateFormat的作用
 * 			1) 它来源于 java.text.SimpleDateFormat;
 * 
 * 			2) 它的作用有两个:
 * 				a) 格式化日期与时间。
 * 	
 * 				b) 将日期时间型字符串还原为 Date类的对象。  * 
 * 
 * 			3) SimpleDateFormat是DateFormat类的子类。它与父类DateFormat不同的是:
 * 				在格式化日期时间时,可以灵活地组织格式。
 */
public class DateTest {
	public static void main(String[] args) throws ParseException {
		Date d1 = new Date();
		System.out.println( d1 );
		
		System.out.printf("%tF\n" , d1 );
		
		Date d2 = new Date(  365L * 24 * 60 * 60 * 1000 * 44L );
		
		System.out.println( d2 );
		
		long t1 = d1.getTime();
		System.out.println( t1 );
		
		Date d3 = new Date( t1 - 1000 );
		System.out.println("d1>>>" + d1 );
		System.out.println("d3>>>" + d3 );
		
		boolean flag = d1.after(d3); //判断d1是在d3之后吗
		System.out.println("flag>>>" + flag );
		
		flag = d1.before(d3); //判断d1是在d3之前吗
		System.out.println("flag>>>" + flag );
		
		flag = d1.equals(d3);
		flag = new Date().equals( new Date() );
		System.out.println( flag );
		
		
		System.out.println("\n日期和时间的格式化");
		System.out.printf("日期>>> %tF \n" , new Date() );
		System.out.printf("北京时间>>> %tT \n" , new Date() );
		System.out.printf("今天是: %tA \n" , new Date() );
		
		System.out.printf("%tF %<tT %<tA\n" , new Date() );
		
		System.out.printf("%tY年%<tm月%<td日 \n" , new Date() );
		System.out.printf("%tH时%<tM分%<tS秒 \n" , new Date() );
		
		double salary = 1000000 / 3.0;
		System.out.printf("%.2f\n" , salary);
		
		String str = String.format("%.2f\n" , salary);
		System.out.println( str );
		
		int i = 1;
		str = "201415" + String.format("%03d", i);
		System.out.println( str );
		
		str = String.format("%tF %<tT %<tA\n" , new Date() );
		System.out.println( str );
		
		Date da1 = new Date();
		System.out.println(  da1 );
		
		String st1 = DateFormat.getDateInstance().format( da1 );
		System.out.println( st1 );
		
		st1 = DateFormat.getTimeInstance().format( da1 );
		System.out.println( st1 );
		
		st1 = DateFormat.getDateTimeInstance().format( da1 );
		System.out.println( st1 );
		
		st1 = "2008-8-8";
		
Date dt = new Date();
		
		SimpleDateFormat  sdf = new SimpleDateFormat("====^_^====\nyyyy-MM-dd \n HH:mm:ss\n==========");

		String stt =  sdf.format( dt ); //将d1按照sdf指定的格式进行格式化。
		System.out.println( str );
		
		stt = "2008-8-8";
		System.out.println( stt );
		
		sdf = new SimpleDateFormat("yyyy-MM-dd");
		Date dr = sdf.parse( stt ); //将字符串还原为Date类的对象。
		System.out.println( dr );

	}
}

 

 


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值