首页 / 科技百科

日历编程java代码

2025-05-04 07:44科技百科

Java语言仿制作一个简易日历,包括基本的日历感觉,没有使用GUI,所以看起来不是很好看,这里主要演示一下日历的基本原理,就不要好看了,开发工具用eclipse,好了话不多说直接开始了。

java

首先,我们先来解决一个问题就是某年某月某日是星期几?这有好多方法,我就举一个方法吧,就是求某年某月某日到1900年1月1日有多少天,之后在对7取余,余几就表示星期几(余数为0表示星期天),那么下面我们就有这个方法求一下今天是星期几?演示代码如下

2016年12月6日是星期二

今天是星期二

那么解决好某月某天是星期几之后,就可以了进行下一步了,首先看一下我们电脑上的日历是一个什么样的效果,以便我们来模仿做一个简单的。

电脑日历

根据图分析一下,可以看出最上面的一排为(日一二三四五六),一输出的那天是星期六,下面就换行了输出了,日历且是从1号开始输出的,所以我们要用上面的方法算出1号是星期几,然后逐渐输出,一到当天是星期六就换行输出就可以了。

首先解释一下变量都是什么意思year是年份month是月份zongtianshu是某年某月1日到1900年1月1日的总天数,xingqi就是当前星期几,sum是计算总天数的方法,daysum是计算当前月有多少天的方法。下面我们运行一下这个程序,看一下这个月的日历。

演示效果

大家可以看出这个和这个月的日历是一样的,就是做的好难看,但他的原理是都演示出来了。下附全部代码。

import java.util.Scanner;

public class Calendar3 {

public static void main(String args[]){

Scanner s=new Scanner(System.in);

System.out.println("请输入年份");

int year=s.nextInt();

System.out.println("请输入月份");

int month=s.nextInt();

int zongtianshu=sum(year,month);

int xingqi=zongtianshu%7;//计算某年某月某日是星期几的方法

System.out.println("日\t一\t二\t三\t四\t五\t六");

for(int i=0;ixingqi;i ){

System.out.print("\t");

}

int tianshu=Daysum(year,month);

for(int i=1;i=tianshu;i ){

if(zongtianshu%7==6){//表示星期六

System.out.println(i);

}else{

System.out.print(i "\t");

}

zongtianshu ;//总天数加1,直到加满整个月

}

}

public static int sum(int year,int month){

int sum = 0;//总天数

for(int i=1990;iyear;i ){

if(i%4==0i0!=0||i@0==0){

sum=sum 36;

} else{

sum=sum 365;

}

}

for(int i=1;imonth;i ){

/ /判断今年是不是闰年

if(i==2){//2月特殊

if(year%4==0year0!=0||year@0==0){

sum =29;

}else{

sum =28;

}

}

else if(i==4||i==6||i==9||i==11){

sum =30;

}

else{

sum =31;

}

}

sum =1;

return sum;//输出0就代表周日

}

public static int Daysum(int year,int month){//哪年哪月共有多少天

if(month==2){

if(year%4==0year0!=0||year@0==0){

return 29;

}

else{

//不是闰年2月应该有28天

return 28;

}

}

else if(month==4||month==6||month==9||month==11){

return 30;

}

else{

return 31;

}

}

}

鲜花送给您

本人菜鸟,还在学习编程,如果文章中有错误,希望您能指出,您的指导是我前进的动力,欢迎评论,欢迎收藏吗,欢迎转发,欢迎关注头条号:趣IT科技。

您认为这篇文章咋样? 单选

0人 0%

小编辛苦,还算凑活

0人 0%

写的什么东西,垃圾

猜你喜欢

  • 科技百科

    java日期格式定义

    该系列为Java工具类系列,主要展示100个常用的java工具类。此文重点讲述:字符串之个性化格式处理。一、日期工具类(本文重点)import java.sql.Timestamp;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.*;/** * @ClassName: DateUtils * @Description: Java7日期工具类 * @Author:..

    2025-04-19
  • 科技百科

    正规少儿编程排名

    近年来,互联网在我国发展快速发展。物联网在重点领域,如工业制造领域、交通物流领域等得到应用;公共云计算服务平台建设、基于云计算平台的大数据服务等互联网技术在医疗、交通等领域得到应用。电子病历、智能交通等公共服务手段、平台的丰富和延伸,促进了社会服务管理模式的创新发展,智慧城市将继续成为全球城市发展的..

    2025-03-23
  • 科技百科

    github免费编程软件

    介绍Min是一种快速,最小化的浏览器,可保护您的隐私。它包括旨在最大程度地减少干扰的界面。功能特点分散注意力Min中的选项卡占用较少的空间,从而为您提供了更多浏览网络的空间。一段时间未浏览的页面会逐渐淡出,让您看到重要的内容,并且“聚焦模式”会隐藏其他选项卡,以防止您分心。立即找到任何东西使用DuckDuckGo的..

    2025-03-01

微信分享

微信分享二维码

扫描二维码分享到微信或朋友圈

链接已复制