说明
Calendar 类是一个抽象类,它为特定瞬间与
YEAR
、
MONTH
、
DAY_OF—MONTH
、
HOUR
等日历 字段之间的转换提供了一些方法,并为操作日历字段(如获得下星期的日期) 提供了一些方法。
创建 Calendar
对象不能使用
new
关键字,因为
Calendar
类是一个抽象类,但是它提供了一个 getInstance() 方法来获得
Calendar
类的对象。
getInstance()
方法返回一个
Calendar
对象,其日历字段已由当前日期和时间初始化。
Calendar 对象可以调用
set()
方法将日历翻到任何一个时间,当参数
year
取负数时表示公元前。Calendar 对象调用
get()
方法可以获取有关年、月、日等时间信息,参数
field
的有效值由
Calendar
静态常量指定。
定义
Calendar 类中定义了许多常量,分别表示不同的意义。
Calendar.YEAR //年份
Calendar.MONTH //月份
Calendar.DATE //日期
Calendar.DAY_OF_MONTH //日期,和上面的字段意义完全相同
Calendar.HOUR //12小时制的小时
Calendar.HOUR_OF_DAY //24小时制的小时
Calendar.MINUTE //分钟
Calendar.SECOND //秒
Calendar.DAY_OF_WEEK //星期几
实例
import java.util.*;
public class D4 {
public static void main(String[] args) throws ParseException {
//指定时间格式化1
var i1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String s1 = "2008-05-23 23:11:04";
Date d2 = i1.parse(s1);
System.out.printf("%tF %<tT %<tp %<tA %<tB%n", d2);
//指定时间格式化2
Calendar c = Calendar.getInstance();
c.set(2010,12-1,05, 23,12 ,05 );
System.out.printf("%tF %<tT %<tp %<tA %<tB%n", c);
//当前时间格式化
Calendar c1 = Calendar.getInstance();
System.out.printf("%tF %<tT %<tp %<tA %<tB%n", c1);
}
}