zoukankan      html  css  js  c++  java
  • java日历显示年份、月份

    import java.util.Scanner;

    class CalendarMain
    {
        //主函数入口
        public static void main(String[] args)
        {
            System.out.println("*****请输入日期(格式如: 2011-01)*****");
            Scanner sc = new Scanner(System.in);
            String ym = sc.next();
            //截取字符串
            String[] yearMonth = ym.split("-");
            //将字符串转化成整型
            int year = Integer.parseInt(yearMonth [0]);
            int month = Integer.parseInt(yearMonth [1]);
            Year.fun(year);
            Month.fun(month,year);
        }
    }

    //获取闰年个数
    class Year
    {
        //多少个闰年
        static int leapYear = 0;

        public static void fun(int year){
            if(year > 1990 && year <10000){
                while(year >= 1990){
                    if(year % 4 == 0 && year % 100 != 0 || (year % 400 ==0 )){
                        leapYear ++;
                    }
                    year --;
                }
            }else{
                System.out.println("请输入查询的年份大于或等于1990年!");
            }
        }
    }

    //获取一个月多少天和总天数
    class Month
    {
        public static void fun(int month,int year){
            int monthDay = 0;
            Year y = new Year();
            int days = y.leapYear + (year - 1990)*365;
            if(month > 0 && month <=12){
                for(int i = 1;i <= month;i++){
                    if(i < 8 && i != 2){
                        days += i % 2 == 1 ? 31 :30;
                        monthDay = i % 2 == 1 ? 31 :30;
                    }
                    if(i > 7){
                        days += i % 2 == 1 ? 30 :31;
                        monthDay  = i % 2 == 1 ? 30 :31;
                    }
                    if(i == 2){
                        if(year % 4 == 0 && year % 100 != 0 || (year % 400 ==0 )){
                            days += 28;
                            monthDay = 29;
                        }else{
                            days += 28;
                            monthDay = 28;
                        }
                    }
                }
                Show.mothed(days,monthDay);
            }else{
                 System.out.println("请输入正确的月份!");
            }
        }
    }

    //显示日历
    class Show
    {
        public static void mothed(int days, int monthDay){
              //加一表示从星期一开始
              int week = (days - monthDay) % 7 + 1;

              System.out.println(" 周日"+" 周一"+" 周二"+" 周三"+" 周四"+" 周五"+" 周六");
              for (int i = 1;i <= monthDay + week ;i++ )
              {
                  if(i <= week){
                      System.out.print(" "+"*"+" ");
                  }else{
                      if((i-week) < 10){
                           System.out.print(" "+(i-week)+" ");
                        }else{
                           System.out.print((i-week)+" ");
                         }
                  }      
                 if(i%7 == 0){
                      System.out.print(" ");
                     }
              }
        }
    }

  • 相关阅读:
    详解PhpStudy集成环境升级MySQL数据库版本
    Mysql5.5升级到5.7的过程已经踩到的坑
    phpStudy中升级MySQL版本到5.7.17的方法步骤
    Windows上使用Vagrant打造Laravel Homestead可协同跨平台开发环境
    百度云下载加速的
    libsvm的安装,数据格式,常见错误,grid.py参数选择,c-SVC过程,libsvm参数解释,svm训练数据,libsvm的使用详解,SVM核函数的选择
    RBF神经网络的matlab简单实现
    spark mllib docs,MLlib: RDD-based API
    目前所有的ANN神经网络算法大全
    Spark1.6.1 MLlib 特征抽取和变换
  • 原文地址:https://www.cnblogs.com/chenrenshui/p/6083022.html
Copyright © 2011-2022 走看看