JAVA实现的简单万年历代码
作者:hacker0825 发布时间:2021-10-02 21:35:34
标签:JAVA,万年历
本文实例讲述了JAVA实现的简单万年历。分享给大家供大家参考,具体如下:
import java.util.Scanner;
public class PrintCalendar {
public static void main(String[] args) {
int years = 0;
int month = 0;
int days = 0;
boolean isRun = false;
//從控制台輸入年,月
Scanner input = new Scanner(System.in);
System.out.print("請輸入年份:");
years = input.nextInt();
System.out.print("請輸入月份:");
month = input.nextInt();
System.out.println("\n*********"+years+"年"+month+"月 日曆表************");
//判断是否是闰年
if((years % 4 == 0 && years % 100 != 0) || (years % 400 == 0)){
isRun = true;
}
int totalDays = 0; //累計天數
//計算距離1900年1月1日的天數
for(int i = 1900; i < years; i++){
if((i % 4 == 0 && i % 100 != 0) || (i % 400 == 0)){
totalDays = totalDays + 366;
}else{
totalDays = totalDays + 365;
}
}
int beforeDays = 0;
//根據月份判斷天數
for(int j = 1; j <= month; j++){
switch(j){
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(isRun){
days = 29;
}else{
days = 28;
}
default:
System.out.println("输入月份不正确!!");
}
if(j < month){
beforeDays = beforeDays + days;
}
}
totalDays = totalDays + beforeDays; //統計到目前總天數
int firstDayOfMonth = 0;
int temp = 1 + totalDays % 7 ;
if(temp == 7){
firstDayOfMonth = 0; //週日
}else{
firstDayOfMonth = temp;
}
/* 输出日历 */
System.out.println("星期日\t星期一\t星期二\t星期三\t星期四\t星期五\t星期六");
for(int k = 0; k < firstDayOfMonth; k++){
System.out.print("\t");
}
for(int m = 1; m <= days; m++){
System.out.print( m + "\t");
if((totalDays + m) % 7 == 6){
System.out.print("\n");
}
}
}
}
关于万年历的制作感兴趣的朋友还可参考本站在线工具:
在线万年历日历
网页万年历日历
希望本文所述对大家Java程序设计有所帮助。


猜你喜欢
- 前言公司的邮件系统用的是 * 的 Lotus notes, 你敢信?最近要实现一个功能,邮件提醒功能,就是通过自动发送提醒邮件 前
- 一个项目中不出意外的话会有两个以上的过滤器,但是直接不配置的话他会按照你的过滤器名字排序执行,这样的话可能会导致一些性能上或者逻辑上的问题。
- 背景朋友想从XX超市app购买一些物美价廉的东西,但是因为人多货少经常都是缺货的状态,订阅了到货通知也没什么效果,每次收到短信通知进入app
- 之前我们在使用vue进行 h5 表单录入的过程中,遇到了Android软键盘弹出,覆盖 h5页面 输入框 问题,在此进行回顾并分享给大家:系
- 简单工厂简单工厂模式是属于创建型模式,是工厂模式的一种。简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。定义了一个创建对象的类,由
- 在springboot项目中如果要在不集成templates的情况下访问静态资源需要做以下配置1.在项目的application.yml文件
- 1. WebView 远程代码执行漏洞描述 Android API l
- 本文实例讲述了C#判断日期是否到期的方法,在C#程序开发中非常具有实用价值。分享给大家供大家参考之用。具体方法如下:一般在用户权限系统中,有
- API参数:/**fileName: 临时文件的名字, 生成后的文件名字将会是【fileName + 随机数】suffix: 文件后缀,例如
- 本文实例讲述了Java日期操作方法工具类。分享给大家供大家参考,具体如下:package com.gcloud.common;import
- 想必大家都知道,国内的Android应用基本都是免费的
- 1、UUID类库UUID 根据时间戳实现自动无重复字符串定义// 获取UUIDpublic static UUID randomUUID()
- 最近在使用后端云Bmob对数据进行存储,目的是在不搭建服务器的前提下,能对Android应用的数据进行操作处理,其实这篇是比较久之前写的了,
- 问题背景公司的项目需要前后端分离,vue+java,这时候就需要支持Cors跨域请求了。最近对zuul进行升级,假如说zuul是1.0的话,
- 觉得作者写得太好了,不得不收藏一下。对这个例子的理解://类型参数不能用基本类型,T和U其实是同一类型。//每次放新数据都成为新的top,把
- 前言:在 Java 语言中,提高程序的执行效率有两种实现方法,一个是使用线程、另一个是使用线程池。而在生产环境下,我们通常会采用后者。为什么
- 本文实例讲述了C#实现基于IE内核的简单浏览器。分享给大家供大家参考。具体如下:Form1.cs如下:using System;using
- 目录顶级程序顶级程序中的方法顶级程序中的类顶级程序的原理分析当我们用 C# 进行编码的时候,总需要写很多的模板代码,即使是最简单的 cons
- IDEA自定义pom依赖抽离公共代码,代码解耦,减少重复第一步: 抽离公共部分的代码第二步: 点击右侧工具栏的maven,刷新,点击skip
- 任何一个类都是Class类的实例对象,这个实例对象有三种表示方式第一种表示方式(任何一个类都有一个隐含的静态成员变量class):Class