JAVA——输出指定年月的日历

JAVA——输出指定年月的日历


1.目的

输出一份当前所在时区当前时间的一个月的日历(1号到28/29/30/31号,以及每天对应为星期几)

2.语法

GregorianCalendar():用机器时间构造一个新对象。
GregorianCalendar(int year,int month,int dayOfMonth,int hourOfDay,int minute,int second):用指定的年、月、日、时、分、秒构造一个新对象。
GregorianCalendar(Locale aLocale):用aLocale指定的地域、默认的时区和当地时间构造一个新对象。
GregorianCalendar(TimeZone zone):用zone指定的时区、默认的地域和当前的时间构造一个新的对象。
GregorianCalendar(TimeZone zone, Locale aLocale):用zone指定的时区、aLocale指定的地域和当前时间构造一个新对象。

3.代码

import java.util.Calendar;
import java.util.GregorianCalendar;
//import java.util.Scanner;

public class rw9 {
    static final String week[]= {"星期日","星期一","星期二","星期三","星期四","星期五","星期六"};
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int i;
        int year=2018;//对指定年份进行设定
        int month=9;//对指定月份进行设定
        System.out.println(year + "年"+ month + "月的日历如下:\n");
        System.out.println("=========================================");
        GregorianCalendar cal=new GregorianCalendar(year,month-1,1);//对年份,月份,以及第一天来创建对象
        int totalDays =cal.getActualMaximum(Calendar.DAY_OF_MONTH);//获取该月份的天数
        int startDay =cal.get(Calendar.DAY_OF_WEEK)-1;//获取该月的第一天是星期几
        for(i=0;i<week.length;i++)
            System.out.print(week[i]+"     ");//输出一周7天的星期
        System.out.println();
        for(i=0;i<startDay;i++)
            System.out.print("            ");//输出第一天前的空格
        for(int day =1;day<=totalDays;day++) {
            if(day<=8) {               //用于输出控制
                System.out.print(day + "           ");//依次输出每一天
            }else {
                System.out.print(day+"          ");
            }
            i++;
            if(i==7) {  //每个星期输完换行
                System.out.println();
                i=0;
            }
        }
    }

}

4.结果

编译结果如下图所示:
这里写图片描述
运行结果如下图所示:
这里写图片描述

猜你喜欢

转载自blog.csdn.net/Atishoo_13/article/details/82499392