非常實(shí)用的java萬(wàn)年歷制作方法
完成萬(wàn)年歷的制作需要用到數(shù)組、循環(huán)等知識(shí)。
編程計(jì)算輸入的月份距離1900年1月1日的天數(shù),求出當(dāng)前月之前的總天數(shù)(不包含當(dāng)前輸入月分的天數(shù),)
編程計(jì)算輸入月份的第一天是星期幾,(公式:星期幾=1+天數(shù)差%7)。
import java.util.Scanner;
public class Calendar{
public static void main(String[] args){
int year;
int month;
int totaldays=0;
Scanner sc=new Scanner(System.in);
System.out.println("請(qǐng)輸入年");
year=sc.nextInt();
System.out.println("請(qǐng)輸入月");
month=sc.nextInt();
//計(jì)算年的總天數(shù)
for(int i=1900;i<year;i++){
if((i%400==0)||(i%4==0&&i%100!=0)){
totaldays+=366;
}else{
totaldays+=365;
}
}
//距離1900年1月1好的總天數(shù)
totaldays+=monthdays(month,year);
//System.out.println(totaldays);
System.out.println("-------------"+year+"年"+month+"月日歷為---------------");
//開頭
System.out.println("星期日\(chéng)t星期一\t星期二\t星期三\t星期四\t星期五\t星期六\t");
//該月第一天是星期幾,星期幾前面就空幾格
int x=1+totaldays%7;
if(x==7){
x=0;
}
for(int i=0;i<x;i++){
System.out.print(" \t");
}
int days=monthday(month,year);
int i=1;
while(i<=days){
System.out.print(i+" \t");
if((i+x)%7==0){
System.out.println();
}
i++;
}
}
//月份總天數(shù)
public static int monthdays(int month,int year){
int totaldays=0;
for(int i=1;i<month;i++){
totaldays+=monthday(i,year);
}
return totaldays;
}
//某月天數(shù)
public static int monthday(int month,int year){
if((year%400==0)||(year%4==0&&year%100!=0)){
int[] arr={0,31,29,31,30,31,30,31,31,30,31,30,31};
return arr[month];
}else{
int[] arr={0,31,28,31,30,31,30,31,31,30,31,30,31};
return arr[month];
}
}
}

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
java Array和Arrays的區(qū)別總結(jié)
在本篇內(nèi)容里小編給大家整理的是一篇關(guān)于java Array和Arrays的區(qū)別總結(jié)內(nèi)容,有需要的朋友們可以學(xué)習(xí)下。2021-03-03
Spring循環(huán)依賴正確性及Bean注入的順序關(guān)系詳解
這篇文章主要給大家介紹了關(guān)于Spring循環(huán)依賴的正確性,以及Bean注入的順序關(guān)系的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2018-01-01
深入學(xué)習(xí)JavaWeb中監(jiān)聽器(Listener)的使用方法
這篇文章主要為大家詳細(xì)介紹了深入學(xué)習(xí)JavaWeb中監(jiān)聽器(Listener)的使用方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-09-09
詳解springboot+atomikos+druid?數(shù)據(jù)庫(kù)連接失效分析
本文主要介紹了springboot+atomikos+druid?數(shù)據(jù)庫(kù)連接失效分析,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-02-02
MyBatis中insert操作返回主鍵的實(shí)現(xiàn)方法
在使用MyBatis做持久層時(shí),insert語(yǔ)句默認(rèn)是不返回記錄的主鍵值,而是返回插入的記錄條數(shù)。這篇文章主要介紹了MyBatis中insert操作返回主鍵的方法,需要的朋友可以參考下2016-09-09
Java ArrayDeque實(shí)現(xiàn)Stack的功能
這篇文章主要介紹了Java ArrayDeque實(shí)現(xiàn)Stack功能的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-03-03
java使用分隔符連接數(shù)組中每個(gè)元素的實(shí)例
今天小編就為大家分享一篇java使用分隔符連接數(shù)組中每個(gè)元素的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-05-05

