這獲取當前日期與公元一年一月的天數差并判斷星期幾里寫自定義目錄標題
絕對沒問題直接用就行
import java.util.Scanner;
public static void main(String args[]){
//用兩個陣列存盤閏年和非閏年的天數
int a[]= {31,29,31,30,31,30,31,31,30,31,30,31};//閏年日期
int b[]= {31,28,31,30,31,30,31,31,30,31,30,31};//非閏年日期
//創建輸入物件
Scanner input = new Scanner(System.in);
//依次輸入年月日
System.out.print("請輸入年份:");
int year = input.nextInt();
System.out.println("請輸入月份");
int month=input.nextInt();
System.out.println("請輸入天數");
int day=input.nextInt();
//判斷是閏年還是非閏年,后面會用到
boolean flag = (year%4==0 && year%100!=0 || year%400==0);
//總天數SunDay初始值為0;
int sumDay=0;
//for回圈遍歷(只遍歷到今年的1月1日)
for(int i=1; i<year; i++){
if(i%4==0 && i%100!=0 || i%400==0){
//閏年演算法
sumDay=sumDay+366;
}else{
//非閏年演算法
sumDay=sumDay+365;
}
}
//判斷今年是否為閏年
if (flag==true) {
//閏年演算法
System.out.println("今年為閏年");
for(int i=0;i<month-1;i++) {
sumDay=sumDay+a[i];
}
}else {
///非閏年演算法
for(int i=0;i<month-1;i++) {
sumDay=sumDay+b[i];
}
}
//因為我們計算到今年的一月一日,但是計算月份的時間會包括這一天,所以總天數要-1,同時還要加上輸入的day;
sumDay=sumDay+day-1;
System.out.println("公元1年1月1日距離"+year+"年"+month+"月"+day+"日"+"共有"+sumDay+" 天");
//如果公元1年1月1日是星期一
int week = (sumDay%7)+1;
System.out.println(week==7?(year+"年"+month+"月"+day+"日是星期天"):(year+"年"+month+"月"+day+"日"+"是星期"+week));
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/274712.html
標籤:java
