域名|java Calendar类

域名|java Calendar类

/**
* 测试Calendar类日历抽象类 和 GregorianCalendar类公历子类
*/
public class TestDate2 {
public static void main(String[
args) {
Calendar calendar = new GregorianCalendar(20001112305);
//2000年 12月!!注意0代表1月 11代表12月  1号 23点 0分 5秒   输入数字比实际月份小1个月 取值范围从0-11
System.out.println(calendar.getTime()+\"的结果为Fri Dec 01 23:00:05 CST 2000\");
//Dec对应11
Date d1 = calendar.getTime();
//.getTime()返回Date类对象
calendar.setTime(new Date());
//将Date对象的值赋给calendar
GregorianCalendar gc2 = new GregorianCalendar(201005102030);
System.out.println(gc2.getTime()+\"的结果为周二Tue Jan 05 10:20:30 CST 2010\");
int year = gc2.get(Calendar.YEAR);
//.get(int field)返回 field所代表的属性的值 返回值为int field年月日等属性对应不同的int值 通过Calendar.常量直接调用 结果2010
int month = gc2.get(Calendar.MONTH);
//结果 0  0+1一月 .get()返回int
int week = gc2.get(Calendar.WEEK_OF_MONTH);
//月中第几周 结果2
int day = gc2.get(Calendar.DAY_OF_MONTH);
//月中几号 结果5号
int dayOfWeek = gc2.get(Calendar.DAY_OF_WEEK);
System.out.println(dayOfWeek+\"的结果为3 周二对应3\");
//day of week 的2对应周一  1对应周日 7对应周六 输出周几比实际周几大一天 取值范围1-7
gc2.set(Calendar.YEAR2022);
//.set(int field int value) 给哪个field赋值value 和get(field)一样可以通过内置的常量调用
gc2.set(Calendar.MONTHCalendar.OCTOBER);
//每个月也有对应的常量
gc2.set(Calendar.DAY_OF_MONTH20);
gc2.set(Calendar.HOUR_OF_DAY20);
gc2.set(Calendar.MINUTE20);
gc2.set(Calendar.SECOND30);
SimpleDateFormat df = new SimpleDateFormat(\"yyyy年MM月dd日 E hh:mm:ss\");
//通过SimpleDateFormat构造器规定日期显示格式
System.out.println(df.format(gc2.getTime())+\"的结果为2022年10月20日 星期四 08:20:30\");
//df.format(Date date)   gc2.getTime()返回Date


class MyCalendar{
public static void printCalendar(Calendar c){
int year = c.get(Calendar.YEAR);
int month = c.get(Calendar.MONTH)+1;
//用中文表述需要+1
int day = c.get(Calendar.DAY_OF_MONTH);
int dayOfWeek = c.get(Calendar.DAY_OF_WEEK)-1;
//用中文表述需要-1 原本是1对应周日 7对应周六 没有0  -1后变成1-6对应周一到周六 0对应周日
int hour = c.get(Calendar.HOUR_OF_DAY);
int minute = c.get(Calendar.MINUTE);
int second = c.get(Calendar.SECOND);
System.out.printf(\"%d年%d月%d日\"yearmonthday);
//%d占位符代表数字 字符串中每一个占位符对应后边的一个参数 %s代表字符串
switch(dayOfWeek){
case 0:
System.out.print(\"周日\");
//将int的周几打印汉字
break;
case 1:
System.out.print(\"周一\");
break;
case 2:
System.out.print(\"周二\");
break;
case 3:
System.out.print(\"周三\");
break;
case 4:
System.out.print(\"周四\");
break;
case 5:
System.out.print(\"周五\");
break;
case 6:
System.out.print(\"周六\");
break;

System.out.printf(\"%d:%d:%d\"hourminutesecond);

public static void main(String[
args) {
GregorianCalendar gc = new GregorianCalendar();
//无参生成当下时刻
printCalendar(gc);
//结果2022年7月12日周二13:9:0


【域名|java Calendar类】