2020-01-25

制作一个万年历(基于控制台输入)的一种写法



demo

package com.js.task.demo;

import java.util.Calendar;

import java.util.Scanner;

/*

* 使用Calendar完成一个万年历

要求:键盘输入一个年份和月份,控制台输出当月的日历

*/

public class Task {

public static void main(String[] args) {

Scanner input=new Scanner(System.in);

System.out.println("请输入一个年份");

int year=input.nextInt();

System.out.println("请输入一个月份");

int month=input.nextInt();

System.out.println(year+"年"+month+"月");

System.out.println("一\t二\t三\t四\t五\t六\t日");

Calendar calendar=Calendar.getInstance();

//设置日期为1号

calendar.set(year, month-1, 1);

//获得当月最大天数

int maxday=calendar.getActualMaximum(Calendar.DATE);

//获得当月第一天的星期

int w=calendar.get(Calendar.DAY_OF_WEEK)-1;

StringBuilder sb=new StringBuilder();

for(int i=1;i

sb.append("\t");

}

int count=w;

for(int i=1;i<=maxday;i++){

sb.append(i+"\t");

count++;

if(count==8){

sb.append("\n");

count=0;

        }

}

System.out.println(sb.toString());

        }

}

你可能感兴趣的:(2020-01-25)