java经常使用类--Date类和Calendar类

构造方法

一、Date()ide

构造一个 Date 对象并对其进行初始化以反映当前时间orm

Date date = new Date();复制代码

Date(long date)对象

构造一个 Date 对象,并根据相对于 GMT 1970 年 1 月 1 日 00:00:00 的毫秒数对其进行初始化接口

Date date = new Date(290192019);复制代码

经常使用方法

long getTime( )字符串

返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数。get

Date date = new Date();
System.out.println(date.getTime());复制代码

void setTime(long time)input

用自1970年1月1日00:00:00 GMT之后time毫秒数设置时间和日期。it

String toString( )form

把此 Date 对象转换为如下形式的 String: dow mon dd hh:mm:ss zzz yyyy 其中: dow 是一周中的某一天 (Sun, Mon, Tue, Wed, Thu, Fri, Sat)。class

int compareTo(Date date)

比较当调用此方法的Date对象和指定日期。二者相等时候返回0。调用对象在指定日期以前则返回负数。调用对象在指定日期以后则返回正数。

日期比较

一、使用 getTime() 方法获取两个日期(自1970年1月1日经历的毫秒数值),而后比较这两个值。

二、使用方法 before(),after() 和 equals()。

例如,一个月的12号比18号早
new Date(99, 2, 12).before(new Date (99, 2, 18));
返回true。复制代码

三、使用 compareTo() 方法,它是由 Comparable 接口定义的,Date 类实现了这个接口。

格式化日期

SimpleDateFormat进行日期格式化

实例:
Date dNow = new Date( );
SimpleDateFormat ft = new SimpleDateFormat ("yyyy-MM-dd hh:mm:ss");
System.out.println(ft.format(dNow));复制代码

printf输出格式化日期

实例:
Date date = new Date();

//c的使用  
//所有日期和时间信息:星期一 九月 10 10:43:36 CST 2012
System.out.printf("所有日期和时间信息:%tc",date);

//f的使用  
//年-月-日格式:2012-09-10
System.out.printf("年-月-日格式:%tF",date);  

//d的使用  
//月/日/年格式:09/10/12  
System.out.printf("月/日/年格式:%tD",date);  

//r的使用 
//HH:MM:SS PM格式(12时制):10:43:36 上午  
System.out.printf("HH:MM:SS PM格式(12时制):%tr",date);  
    
//t的使用  
//HH:MM:SS格式(24时制):10:43:36  
System.out.printf("HH:MM:SS格式(24时制):%tT",date);  

//R的使用  
//HH:MM格式(24时制):10:43  
System.out.printf("HH:MM格式(24时制):%tR",date);  
复制代码

解析字符串为时间

SimpleDateFormat 类有一些附加的方法,特别是parse(),它试图按照给定的SimpleDateFormat 对象的格式化存储来解析字符串

实例:
SimpleDateFormat ft = new SimpleDateFormat ("yyyy-MM-dd"); 
String input = "1818-11-11"; 

System.out.print(input + " Parses as "); 
Date t; 
t = ft.parse(input); 
System.out.println(t); 

//1818-11-11 Parses as Wed Nov 11 00:00:00 GMT 1818复制代码

休眠sleep

实例:
System.out.println(new Date( )); 
Thread.sleep(1000*3);   // 休眠3秒
System.out.println(new Date( ));复制代码

时间差

实例:
long start = System.currentTimeMillis( );
Thread.sleep(10000);
long end = System.currentTimeMillis( );
long diff = end - start;
System.out.println(diff);复制代码

Calendar

建立一个表明系统当前日期的Calendar对象

Calendar c = Calendar.getInstance();

建立一个特定时间的Calendar对象

Calendar c1 = Calendar.getInstance();

c1.set(2009, 6, 12);

set设置

实例:
Calendar c1 = Calendar.getInstance();
public final void set(int year,int month,int date){...}
c1.set(2009, 6, 12);
//把Calendar对象c1的年月日分别设这为:200九、六、12

public void set(int field,int value)
c1.set(Calendar.DATE,10);
c1.set(Calendar.YEAR,2008);复制代码

add设置

实例:
Calendar c1 = Calendar.getInstance();
c1.add(Calendar.DATE, 10);//日期加10天
c1.add(Calendar.DATE, -10);//日期减10天复制代码
相关文章
相关标签/搜索