• Java实现指定年份月份的日历表


    输入指定的年份与月份,看这个月的日历表

    package Xueying_Liu;
    
    import java.util.Scanner;
    
    public class rilibiao {
        public static void main(String[] args) {
            Scanner sc = new Scanner(System.in);
            System.out.println("请输入您选择的年份");
            int year = sc.nextInt();
            System.out.println("请输入您选择的月份");
            int month = sc.nextInt();
            //记录一共有多少天
            int count = 1;
    
    
            //从1990年到输入的这一年之前一共有多少天
            for (int i = 1990; i < year; i++) {
                if ((i % 4 == 0 && i % 100 != 0) || i % 400 == 0) {
                    count += 366;
                } else {
                    count += 365;
                }
            }
            //看输入的那一年是不是闰年
            boolean bool = false;
            if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
                bool = true;
            }
    //看输入的那一年在这个月之前有多少天
            for (int i = 1; i < month; i++) {
                switch (i) {
                    case 1:
                    case 3:
                    case 5:
                    case 7:
                    case 8:
                    case 10:
                    case 12:
                        count += 31;
                        break;
                    case 2:
                        if (bool)
                            count += 29;
                        else
                            count += 28;
                        break;
                    default:
                        count += 30;
                }
            }
    
    
    //记录那个月有多少天
            int day = 0;
            switch (month) {
                case 1:
                case 3:
                case 5:
                case 7:
                case 8:
                case 10:
                case 12:
                    day = 31;
                    break;
                case 2:
                    if (bool)
                        day = 29;
                    else
                        day = 28;
                    break;
                default:
                    day = 30;
    
            }
    
            //   System.out.println(count);
            System.out.println("周日	周一	周二	周三	周四	周五	周六	");
            //week记录是周几,周日为0
            int week = count % 7;
            //这个月第一天可能不是周日,需要输出空格
            for (int i = 0; i < week; i++) {
                System.out.print("		");
            }
            for (int i = 1; i <= day; i++) {
                //每加一天,week加一,当这一周满了以后,就会换行
                if (week == 7) {
                    System.out.println();
                    week = 0;
                }
                week++;
                System.out.print(i + "		");
            }
    
    
        }
    }
    
    
  • 相关阅读:
    android:重写返回键动画
    获得今天零点时间戳(转)
    【转】完美解决Android 9.0以上HTTP网络请求被限制问题
    Java的三种取整方法
    thymeleaf控制checkbox的选中状态回显
    thymeleaf控制checkbox的value值
    Supervisor 简单使用
    关于Requests代理,你必须知道的
    py-spy 常见问题及使用说明
    记一次Scrapy进程卡死的Debug过程
  • 原文地址:https://www.cnblogs.com/a1439775520/p/13075892.html
Copyright © 2020-2023  润新知