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天覆制代碼
相關文章
相關標籤/搜索