您好,登錄后才能下訂單哦!
本篇文章為大家展示了 Calendar日歷類如何在Java項目中使用,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
java.util.Calendar 是日歷類,在Date后出現,替換掉了許多Date的方法。該類將所有可能用到的時間信息封裝為靜態成員變量,方便獲取。日歷類就是方便獲取各個時間屬性的。Calendar類無法直接創建對象使用,里邊有一個靜態方法getInstance(),該方法返回了Calendar類的子類對象。Calendar類中提供很多成員常量,代表給定的日歷字段:具體如下圖
1
獲取方式
Calendar為抽象類,由于語言敏感性,Calendar類在創建對象時并非直接創建,而是通過靜態方法創建,返回子類對象,如下:
Calendar靜態方法
public static Calendar getInstance() :使用默認時區和語言環境獲得一個日歷
//獲取Calendar類的子類對象 Calendar cal = Calendar.getInstance();
常用方法
根據Calendar類的API文檔,常用方法有:
public int get(int field) :返回給定日歷字段的值。
package demo04; import java.util.Calendar; public class Demo01 { public static void main(String[] args) { //通過靜態方法創建,返回Calendar子類對象 Calendar instance = Calendar.getInstance(); /* public int get(int field):返回給定日歷字段的值。 參數:傳遞指定的日歷字段(YEAR,MONTH...) 返回值:日歷字段代表的具體的值 */ System.out.print("現在是"+instance.get(Calendar.YEAR)+"年"); //在Calendar類中,月份的表示是以0-11代表1-12月。 System.out.print(instance.get(Calendar.MONTH)+"月"); System.out.println(instance.get(Calendar.DAY_OF_MONTH)+"日"); } }
代碼執行后的結果
2
public void set(int field, int value) :將給定的日歷字段設置為給定值。
package demo04; import java.util.Calendar; public class Demo02 { /* public void set(int field, int value):將給定的日歷字段設置為給定值。 參數: int field:傳遞指定的日歷字段(YEAR,MONTH...) int value:給指定字段設置的值 */ public static void main(String[] args) { //使用getInstance方法獲取Calendar對象 Calendar c = Calendar.getInstance(); //設置年為9999 c.set(Calendar.YEAR, 9999); //設置月為9月 c.set(Calendar.MONTH, 9); //設置日9日 c.set(Calendar.DATE, 9); //獲取設置后的日期 System.out.println("現在的日期是" + c.get(Calendar.YEAR) + "年" + c.get(Calendar.MONTH) + "月" + c.get(Calendar.DAY_OF_MONTH) + "日"); //同時設置年月日,可以使用set的重載方法 c.set(8888, 8, 8); System.out.println("現在的日期是" + c.get(Calendar.YEAR) + "年" + c.get(Calendar.MONTH) + "月" + c.get(Calendar.DAY_OF_MONTH) + "日"); } }
代碼執行后的結果
3
public abstract void add(int field, int amount) :根據日歷的規則,為給定的日歷字段添加或減去指定的時間量。
package demo04; import java.util.Calendar; public class Demo03 { /* public abstract void add(int field, int amount):根據日歷的規則,為給定的日歷字段添加或減去指定的時間量。 把指定的字段增加/減少指定的值 參數: int field:傳遞指定的日歷字段(YEAR,MONTH...) int amount:增加/減少指定的值 正數:增加 負數:減少 */ public static void main(String[] args) { //使用getInstance方法獲取Calendar對象 Calendar c = Calendar.getInstance(); //獲取當前的日期 System.out.println("現在的日期是" + c.get(Calendar.YEAR) + "年" + c.get(Calendar.MONTH) + "月" + c.get(Calendar.DAY_OF_MONTH) + "日"); //把年增加2年 c.add(Calendar.YEAR, 2); //把月份減少3個月 c.add(Calendar.MONTH, -3); //獲取設置后的日期 System.out.println("現在的日期是" + c.get(Calendar.YEAR) + "年" + c.get(Calendar.MONTH) + "月" + c.get(Calendar.DAY_OF_MONTH) + "日"); } }
代碼執行后的結果
4
public Date getTime() :返回一個表示此Calendar時間值(從歷元到現在的毫秒偏移量)的Date對象。
package demo04; import java.util.Calendar; import java.util.Date; public class Demo04 { /* public Date getTime():返回一個表示此Calendar時間值(從歷元到現在的毫秒偏移量)的Date對象。 把日歷對象,轉換為日期對象 */ public static void main(String[] args) { //使用getInstance方法獲取Calendar對象 Calendar c = Calendar.getInstance(); //日歷對象--->日期對象 Date date = c.getTime(); System.out.println(date); } }
代碼執行后的結果
5
注意事項
西方星期的開始為周日,中國為周一。
在Calendar類中,月份的表示是以0-11代表1-2月。
日期是有大小關系的,時間靠后,時間越大。
上述內容就是 Calendar日歷類如何在Java項目中使用,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。