一、Calendar
Calendar 類在Java中是一個抽象類,提供了一個完全由Java編寫的日曆系統,用於將日期欄位向周減少或增加跨度,以及格式化日期的方法。
import java.util.Calendar; import java.util.GregorianCalendar; public class CalendarDemo { public static void main(String[] args) { Calendar cal = Calendar.getInstance(); System.out.println("今天的日期: " + cal.getTime()); // 一個星期後的日期 cal.add(Calendar.DATE, 7); System.out.println("一個星期後的日期: " + cal.getTime()); // 一個月後的日期 cal.add(Calendar.MONTH, 1); System.out.println("一個月後的日期: " + cal.getTime()); // 一年後的日期 cal.add(Calendar.YEAR, 1); System.out.println("一年後的日期: " + cal.getTime()); } }
以上代碼演示了Calendar類的基本用法。通過getInstance()方法獲得一個Calendar對象,然後調用add()方法修改日期。
二、Calendar類的add方法
Calendar類提供了 add() 方法來增加或減少指定的時間量。
cal.add(Calendar.YEAR, -1); // 將年份減一年 cal.add(Calendar.MONTH, 6); // 將月份加上六個月
三、Calendar類
然而,由於Calendar類是一個抽象類,我們無法直接使用它。所以我們需要使用它的子類來實現自己的日期格式。
Java提供了4個子類可以使用:
- GregorianCalendar
- JapaneseImperialCalendar
- BuddhistCalendar
- IslamicCalendar
例如,可以這樣使用GregorianCalendar類來初始化一個對象。
Calendar cal = new GregorianCalendar(2022, 8, 1); System.out.println(cal.getTime());
四、Calendar類API
以下列表顯示了Calendar類的主要方法。
- get(field): 輸出給定欄位的值
- set(field, value): 設置指定欄位的值
- add(field, amount): 添加給定欄位的值,負值減去該值
- roll(field, value): 通過給定的值將指定欄位向前或向後滾動,而不更改較大的欄位
- getTime(): 返回一個代表calendar日期值的Date對象
- compareTo(Calendar anotherCalendar): 比較此分配給指定類型的兩個Calendar對象的值
- equals(Object obj): 比較此Calendar時間值(從曆元到現在的毫秒數)是否相等於另一個Calendar。
五、Calendar類的方法
以下是Calendar類的一些常用方法:
- get(Calendar.YEAR): 獲取年份
- get(Calendar.MONTH): 獲取月份
- get(Calendar.DAY_OF_MONTH): 獲取日期
- get(Calendar.DAY_OF_WEEK): 獲取星期幾
- get(Calendar.HOUR_OF_DAY): 獲取小時
- get(Calendar.MINUTE): 獲取分鐘
- get(Calendar.SECOND): 獲取秒鐘
- get(Calendar.MILLISECOND): 獲取毫秒
六、Calendar類常用方法
下面是Calendar類的一些常用方法:
- Calendar.getActualMaximum(int field): 獲取指定欄位在其範圍內的最大值。
- Calendar.getActualMinimum(int field): 獲取指定欄位在其範圍內的最小值。
- Calendar.before(Object when): 如果此時刻在when之前,則返回true。
- Calendar.after(Object when): 如果此時刻在when之後,則返回true。
- Calendar.compareTo(Calendar anotherCal): 比較此Calendar時間值(從曆元到現在的毫秒數)是否相等於另一個Calendar時間值。
- Calendar.setTime(Date date): 將此Calendar時間表示設置為指定的Date。
- Calendar.set(int year, int month, int date): 設置Calendar時間值到指定的年月日。
七、Calendar怎麼使用
以下是通過一個例子,展示Calendar類的使用。
import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.GregorianCalendar; public class Main { public static void main(String[] args) { Calendar calendar = new GregorianCalendar(); SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); System.out.println("當前時間是:"+ dateFormat.format(calendar.getTime())); // 加200年 calendar.add(Calendar.YEAR, 200); System.out.println("加200年後的時間是:" + dateFormat.format(calendar.getTime())); // 減去三個月 calendar.add(Calendar.MONTH, -3); System.out.println("減去三個月後的時間是:" + dateFormat.format(calendar.getTime())); // 設置為1998年 calendar.set(Calendar.YEAR, 1998); System.out.println("設置為1998年後的時間是:" + dateFormat.format(calendar.getTime())); } }
八、calendar使用教程
Calendar類的使用需要一些基本的Java知識。以下是入門Java編程所需的知識:
- Java基礎語法和基本數據類型
- 對象和類
- 繼承和多態
- 異常處理
九、使用什麼方法可以獲得Calendar類
以下是獲取Calendar類的方法:
- Calendar.getInstance(): 獲取默認的Calendar對象
- GregorianCalendar(): 使用默認時區和語言環境構造Calendar對象
- GregorianCalendar(TimeZone zone): 指定時區和語言環境構造Calendar對象
- GregorianCalendar(Locale aLocale): 指定語言環境構造Calendar對象
總之,Calendar類是一個非常有用的Java類,可以在日期和時間計算中編寫優秀的代碼。
原創文章,作者:WKFJG,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/325489.html