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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

java calendar field_Java Calendar详解

發布時間:2025/3/12 java 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java calendar field_Java Calendar详解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一:字段和方法的信息

YEAR 字段:

public static final int YEAR ;

指示年的 get 和 set 的字段數字。這是一個特定于日歷的值;

get 方法:

public int get(int field) ;

返回給定日歷字段的值。在 lenient 模式下,所有日歷字段都被標準化。在 non-lenient 模式下,所有日歷字段都是經過驗證的,如果任何日歷字段有超出范圍的值,則此方法拋出一個異常。標準化和驗證都是通過 complete() 方法處理的,這個過程與日歷系統有關。

參數:field - 給定的日歷字段。

返回:給定日歷字段的值。

拋出:ArrayIndexOutOfBoundsException - 如果指定字段超出范圍 (field < 0 || field >= FIELD_COUNT)。

詳細資料可以參考JDK API的java.util.Calendar

二:Calendar 類詳解

Calendar 類是一個抽象類,它為特定時間與一組諸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日歷字段之間的轉換提供了一些方法,并為操作日歷字段(例如獲得下星期的日期)提供了一些方法。瞬間可用毫秒值來表示,它是距歷元(即格林威治標準時間 1970 年 1 月 1 日的 00:00:00.000,格里高利歷)的偏移量。

1、使用Calendar類別之前,要先知道Calendar的一些方法取回的數字是對應于Calendar本身的常數,也就是說并不是取回1 這個數字,就表示今天是星期一。

a、想要取得時間,首先使用Calendar的getInstance()取得一個Calendar的實例,例如:

Calendar rightNow = Calendar.getInstance();

b、如果現在您想知道是幾年,則可以使用get()方法并指定常數,例如:

System.out.println(rightNow.get(Calendar.YEAR));

c、如果是2005年,則上例會顯示2005的數字,依照這個例子,假設撰寫本文的時間是5月份,而現在想使用程式取得月份,則下例可能會有些困惑:

System.out.println(rightNow.get(Calendar.MONTH));

d、程式會顯示4這個數字,而不是預期的5,因為傳回的4并不是代表月份,而是對應于Calendar.MAY常數的值, Calendar在月份上的常數值從Calendar.JANUARY開始是0,到Calendar.DECEMBER的11,所以如果想要顯示傳回值的真正意涵,可以如下撰寫:

String[] months = {"一月", "二月", "三月", "四月","五月", "六月", "七月", "八月","九月", "十月", "十一月", "十二月"};

Calendar rightNow=Calendar.getInstance();

System.out.println(months[rightNow.get(Calendar.MONTH)]);

2、初始值

代碼如下,值得指出的是由于我們的時區設置是GMT+8,所以打印格林威治時間得到的是1970-01-01 08:00:00.

Calendar cal = Calendar.getInstance();//得到當前時間

cal.setTimeInMillis(0);//轉換成格林威治時間

3、獲取值

cal.get(Calendar.YEAR);//年

cal.get(Calendar.MONTH) + 1;//月(必須要+1)

cal.get(Calendar.DATE);//日

cal.get(Calendar.HOUR_OF_DAY);//時

cal.get(Calendar.MINUTE);//分

cal.get(Calendar.SECOND);//秒

cal.get(Calendar.DAY_OF_WEEK);//星期(Locale.ENGLISH情況下,周日是1,剩下自己推算)

如果拿時間不是為了計算而是展示出來,肯定用SimpleDateFormart了,模式為yyyy-MM-dd HH:mm:ss

4、設置值

cal.set(2013, 5, 4, 13, 44, 51);//年月日時分秒(月份0代表1月)

cal.set(Calendar.YEAR, 2014);//年

cal.set(Calendar.MONTH, 7);//月(月份0代表1月)

cal.set(Calendar.DATE, 11);//日

cal.set(Calendar.HOUR_OF_DAY, 15);//時

cal.set(Calendar.MINUTE, 33);//分

cal.set(Calendar.SECOND, 32);//秒

5、運算值

cal.add(Calendar.YEAR, 1);//年

cal.add(Calendar.MONTH, 1);//月

cal.add(Calendar.DATE, 1);//日

cal.add(Calendar.HOUR_OF_DAY, -1);//時

cal.add(Calendar.MINUTE, 1);//分

cal.add(Calendar.SECOND, 1);//秒

cal.add(Calendar.DATE, 7);//周

總結

以上是生活随笔為你收集整理的java calendar field_Java Calendar详解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。