首页 > 编程语言 >Java打印日历

Java打印日历

时间:2023-08-09 20:32:24浏览次数:48  
标签:日历 Java int 打印 System month println java out

Java打印日历_管理系统

package edu.java.homework.calendar;

import java.util.Calendar;
import java.util.GregorianCalendar;

public class MyCalendar
{
    private final int year;
    private final int month;
    public MyCalendar(int year,int month)//构造函数
    {
        this.year=year;
        this.month=month;
    }
    public void printCalendar()
    {
        System.out.println("日\t一\t二\t三\t四\t五\t六");
        int week=getWeekDay(year,month,1);//得到星期数
        for(int i=1;i<week;i++)
        {
            System.out.print("\t");
        }
        int monthDays=getMonthDays(year,month);//得到该月天数
        for(int i=1;i<=monthDays;i++)
        {
            if(getWeekDay(year,month,i)==7)
            {
                System.out.print(i+"\n");
            }else
                System.out.print(i+"\t");
        }
        System.out.println();
    }
    public int getWeekDay(int year,int month,int day)
    {
        int week=-1;
        // 使用Calendar类
        Calendar calendar=new GregorianCalendar(year,month-1,day);
        week=calendar.get(Calendar.DAY_OF_WEEK);
        return week;
    }
    public int getMonthDays(int year,int month)
    {
        int monthDays=0;
        if(month==4||month==6||month==9||month==11)
        {
            monthDays=30;
        }else if(month==2) // 2月需要判断是否为闰年
        {
            if(year%4==0&&year%100!=0||year%400==0)
            {
                monthDays=29;
            }else
                monthDays=28;
        }else
            monthDays=31;
        return monthDays;
    }
}
package edu.java.homework.chapter;

import edu.java.homework.calendar.MyCalendar;
import java.util.InputMismatchException;
import java.util.Scanner;
public class Chapter1
{
    Scanner in=new Scanner(System.in);
    public void chapterMenu()
    {
        while(true)
        {
            System.out.println("请选择作业序号:");
            System.out.println("1--输出日历;2--人事管理系统;0--退出");
            int option;
            while(true) // 检验输入的是否为数字,不是则需重新输入
            {
                try
                {
                    option = in.nextInt();
                    break;
                }catch(InputMismatchException e)
                {
                    System.out.println("输入类型不匹配,请重新输入");
                    in=new Scanner(System.in);
                }
            }
            if(option==1)
            {
                work1();
            }else if(option==2)
            {
                work2();
            }else if(option==0)
            {
                break;
            }
        }
    }
    private void work1()
    {
        System.out.println("1、输出日历,格式如下:");
        MyCalendar myCalendar=new MyCalendar(2022,9);
        myCalendar.printCalendar();
    }
    private void work2()
    {
        System.out.println("2、输出如下:");
        System.out.println("************************");
        System.out.println("     人事管理系统");
        System.out.println("     1、添加用户");
        System.out.println("     2、查询用户");
        System.out.println("     3、退出系统");
    }
}

标签:日历,Java,int,打印,System,month,println,java,out
From: https://blog.51cto.com/u_16131726/7025026

相关文章

  • JavaScript 对象和 JSON 的区别
    参考原文:https://blog.csdn.net/jiaojiao772992/article/details/77871785/2.1对象和JSON的区别JSON就是JavaScriptobjectnotation,JS对象表示法,是JS对象的严格子集。区别就是引号:JSON要求所有的属性名(键)必须加双引号“”,而JS对象实际上不要求双引号。这就是一个标准......
  • java之Socket通信,Socket服务端返回数据,基本数据类型占用字节数。
    参考:https://blog.csdn.net/qq_43842093/article/details/129964892https://blog.csdn.net/weixin_42408447/article/details/126437276数据类型占用字节数://Java一共有8种基本数据类型://1、int占4字节,取值范围为“-2147483648~2147483647”;//2、short占2字节,......
  • Java微服务项目【动力商城】企业级实战项目直击大厂
    2023年动力节点全新版微服务项目【动力商城】震撼来袭!企业级实战项目,直击大厂!动力商城是以B2C模式运营的在线商城,总览企业及公司产品于一体,主打自主研发品牌以推广的互联网化新商城。系统采用的微服务架构模式。技术选型:Springboot+SpringCloud、Mybatis-plus、MySQL、Redis、阿里......
  • MySQL和Java中的货币字段类型选择
    引言在互联网应用中,处理货币是一项常见的任务。为了确保准确性和精度,我们需要选择适当的字段类型来存储货币数据。本文将讨论在MySQL和Java中记录货币时应选择的字段类型,并提供相应的代码示例。MySQL中的货币字段类型在MySQL中,我们可以使用DECIMAL数据类型来存储货币数据。DECIM......
  • 【校招VIP】java语言考点之基本数据类型
    考点介绍:基本数据类型的长度、自动升级、JVM存储和封装类的相关考点,是校招常见考点。基础考点不能出错一、考点题目1、JAVA中的几种基本数据类型是什么,各自占用多少字节解答:先了解2个单词先:1、bit--位:位是计算机中......2、byte--字节:字节是......2、JAVA是不是完全的面向......
  • 基于Java开发的企业级数字化采购系统(SRM)
    一、项目介绍一款全源码可二开,可基于云部署、私有部署的企业级数字化采购管理系统,供应商全生命周期管控,公开询价管理,招标,定标,评审,生成订单,送货,收货全流程管理,让企业采购全程数字化管控,助力企业全面提升效率与效益。电子化采购全闭环管理,打造企业高效透明采购平台。二、项目技......
  • 快速了解JavaScript的JSON
    JSON是用于存储和传输数据的格式。JSON通常用于服务端向网页传递数据。1什么是JSON?JSON英文全称 JavaScript Object NotationJSON是一种轻量级的数据交换格式。JSON是独立的语言 *JSON易于理解。2JSON语法基本上JSON对象就是基于JavaScript对象,因......
  • 老杜 JavaWeb 讲解(二十) ——Listener监听器
    (十八)Listener监听器引子:静态代码块packagecom.zwm.javaweb.servlet;/***@author猪无名*@date2023/8/81347*discription:*/publicclasstest2{//静态代码块在类加载时执行,并且只执行一次。//这个语法很简单,但什么时候用?很疑惑//假如,你希......
  • JavaScript用法
    JavaScript用法HTML中的JavaScript脚本代码必须位于<script>和</script>标签之间。Javascript脚本代码可被放置在HTML页面的<body>和<head>部分中。<script>标签<script>和</script>之间的代码包含了JavaScript<!DOCTYPEhtml><htmllang="en">......
  • JavaScript:表单生成器
    JavaScript:表单生成器一条小橘猫于2021-12-0116:10:56发布3393收藏38分类专栏:JavaScript文章标签:经验分享javajavascripthtml前端版权华为云开发者联盟该内容已被华为云开发者联盟社区收录加入社区JavaScript专栏收录该内容45篇文章55订阅已订阅表单属性有姓......