日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > java >内容正文

java

Java语言中提供了三个日期类_Java语言学习(5)-Java中基础封装类(日期、时间类)...

發(fā)布時(shí)間:2024/9/27 java 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java语言中提供了三个日期类_Java语言学习(5)-Java中基础封装类(日期、时间类)... 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

日期和時(shí)間封裝類

1、 Data類

Java日期和時(shí)間采用Data類。Data類在java.util包中。

Data類構(gòu)造函數(shù):

1)?????? Data()?? 采用當(dāng)前時(shí)間初始化對(duì)象;

2)?????? Data(long millisec)?? 采用1970年1月1日起時(shí)間毫秒數(shù)來初始化對(duì)象。

Data類的方法:

1)?????? boolean after(Data d)、boolean before(Data d)

Data對(duì)象和參數(shù)指定日期較早晚,返回boolean值。

2)?????? boolean equals(Object data)

判斷Data對(duì)象和參數(shù)中日期是否相等。

3)?????? int compareTo(Data d)

Data對(duì)象和日期參數(shù)比較,返回int值:

相等則返回0;

Data對(duì)象在參數(shù)日期參數(shù)后,返回正數(shù);

否則返回負(fù)數(shù)

4)?????? long getTime( )

返回1970 年 1 月 1 日 00:00:00 GMT起時(shí)間毫秒數(shù)

5)?????? void setTime(long time)

用1970 年 1 月 1 日 00:00:00 GMT起時(shí)間毫秒數(shù)設(shè)置日期和時(shí)間

6)?????? String toString()

把Date 對(duì)象轉(zhuǎn)換為以下形式的 String:dow mon dd hh:mm:ss zzz yyyy,其中dow標(biāo)識(shí)星期幾

2、 日期格式化:

一、SimpleDateFormat類

SimpleDateFormat類是個(gè)日期格式化類。SimpleDataFormat是一個(gè)以語言環(huán)境敏感的方式來格式化和分析日期的類。樣例:

Date dNow = new Date();

SimpleDateFormat ft = new SimpleDateFormat ("yyyy-MM-dd hh:mm:ss");

ft.format(dNow)

二、使用printf格式化Data對(duì)象的輸出格式:

printf方法可以很輕松地格式化時(shí)間和日期。使用兩個(gè)字母格式,它以%t開頭并且以表示格式的字母結(jié)尾。

1)?????? %tc

包括全部日期和時(shí)間信息,星期六 十月 27 14:21:20 CST 2007

2)?????? %tF

"年-月-日"格式 2007-10-27

3)?????? %tD "

月/日/年"格式 10/27/07

4)?????? %tr

"HH:MM:SS PM"格式(12時(shí)制) 02:25:51 下午

5)?????? %tT

"HH:MM:SS"格式(24時(shí)制)14:28:16

6)?????? %tR

"HH:MM"格式(24時(shí)制)14:28

三、解析時(shí)間字符串為時(shí)間對(duì)象:

SimpleDateFormat 類有一些附加的方法,特別是parse(),它試圖按照給定的SimpleDateFormat 對(duì)象的格式化存儲(chǔ)來解析字符串。樣例:

SimpleDateFormat ft = new SimpleDateFormat ("yyyy-MM-dd");

String input = "1818-11-11";

Date t;

t = ft.parse(input);

3、 進(jìn)程休眠

可以采用如下方式進(jìn)入停滯狀態(tài)(阻塞當(dāng)前線程),讓出CPU的使用。樣例:

Thread.sleep(1000*3); // 休眠3秒

4、 Calender類

如何設(shè)置和獲取日期數(shù)據(jù)的特定部分呢,比如說小時(shí),日,或者分鐘?又如何在日期的這些部分加上或者減去值呢? 答案是使用Calendar 類。

Calendar類的功能要比Date類強(qiáng)大很多,而且在實(shí)現(xiàn)方式上也比Date類要復(fù)雜一些。

Calendar類是一個(gè)抽象類,在實(shí)際使用時(shí)實(shí)現(xiàn)特定的子類的對(duì)象,創(chuàng)建對(duì)象的過程對(duì)程序員來說是透明的,只需要使用getInstance方法創(chuàng)建即可。

1)?????? 創(chuàng)建Calendar類對(duì)象。由于Calendar類是個(gè)抽象類,其創(chuàng)建對(duì)象方式不同:

Calendar c = Calendar.getInstance();? //創(chuàng)建一個(gè)Calendar對(duì)象,時(shí)間是當(dāng)前時(shí)間

2)?????? 修改calendar對(duì)象的時(shí)間

方式一:public final void set(int year,int month,int date)

樣例:

c.set(2009, 6 - 1, 12);

方式二:指定日期中某個(gè)字段,修改

Calendar.YEAR??? ? ????????? 年份

Calendar.MONTH?????????????? 月份

Calendar.DATE????????????????? 日期

Calendar.DAY_OF_MONTH????? 日期,和上面的字段意義完全相同

Calendar.HOUR????????????????? 12小時(shí)制的小時(shí)

Calendar.HOUR_OF_DAY? 24小時(shí)制的小時(shí)

Calendar.MINUTE???????????????????? 分鐘

Calendar.SECOND??????????????????? 秒

Calendar.DAY_OF_WEEK 星期幾

樣例:

c.set(Calendar.DATE,10);

c.set(Calendar.YEAR,2008);

3)?????? 獲取Calendar對(duì)象的具體某個(gè)字段

樣例:

// 獲得年份

int year = c1.get(Calendar.YEAR);

// 獲得分鐘

int minute = c1.get(Calendar.MINUTE);

// 獲得秒

int second = c1.get(Calendar.SECOND);

// 獲得星期幾(注意(這個(gè)與Date類是不同的):1代表星期日、2代表星期1、3代表星期二,以此類推)

int day = c1.get(Calendar.DAY_OF_WEEK);

4)?????? Calendar對(duì)象的具體某個(gè)加減操作

樣例:

c.add(Calendar.DATE, 10);? //10天后時(shí)間

c.add(Calendar.DATE, -10);? //10天前時(shí)間

5、 GregorianCalendar

GregorianCalendar類實(shí)現(xiàn)公歷日歷。詳見類定義。

總結(jié)

以上是生活随笔為你收集整理的Java语言中提供了三个日期类_Java语言学习(5)-Java中基础封装类(日期、时间类)...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。