Java calender 加强版

package homework2;
/*
         * 用户输入年月,打印该月份万年历
         *

         * 输入任意年月,打印万年历 1.输入年和月 2.获取该月有多少天

           3.判断该月的一号是周几 4.打印空格 5.打印日期

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

import org.omg.CORBA.INTERNAL;

public class Calender {
public static void main(String[] args) {
    Scanner s1=new Scanner(System.in);
    System.out.println("请输入年份:");
    int year=s1.nextInt();
    System.out.println("请输入月份:");
    int month=s1.nextInt();
    int days=0;
    //计算每个月的天数
    switch(month){
    case 1:
    case 3:
    case 5:
    case 7:
    case 8:
    case 10:
    case 12:
        days=31;
        break;
    case 4:
    case 6:
    case 9:
    case 11:
        days=30;
        break;
    case 2:
        if((year%4==0&&year%100!=0)||year%400==0){
            days=29;
        }else{
            days=28;
        }
        break;
    default :
        System.out.println("请输入正确的月份!");
                                               
    
    
    }
    
    Calendar c1=Calendar.getInstance();
    c1.set(Calendar.YEAR, year);
    c1.set(Calendar.MONTH, month-1);
    c1.set(Calendar.DAY_OF_MONTH, 1);//设定该月的一号
    int week=c1.get(Calendar.DAY_OF_WEEK);//求该月一号是周几
    int count=0;
    
    System.out.println("周日\t周一\t周二\t周三\t周四\t周五\t周六");
    //打印空格
    for(int i=0;i<week-1;i++){
        count++;
        System.out.print("\t");
        
        
    }
    //打印天数
    for(int day=1;day<=days;day++){
        count++;
        System.out.print(day+"\t");
        if(count%7==0){
            System.out.println();
        }
    }
    
}
}

猜你喜欢

转载自blog.csdn.net/abcd2333/article/details/80867370