이 글은 만년력을 만드는 방법을 공유하고 있습니다. 글에 틀린 부분이 있으면 비판하고 바로잡아주세요.
(추천 튜토리얼: java 강좌)
코드 구현:
package com.softeem.test01; import java.time.Month; import java.time.Year; import java.util.Scanner; public class DynamicCalendar { private int y; private int m; public DynamicCalendar(int y, int m) { this.y = y; this.m = m; } public boolean year(int ye) { return ye % 4 == 0 && ye % 100 != 0 || ye % 400 == 0; } public int month(int ye, int mon) { if (mon < 1 || mon > 12) { System.out.println("输入错误"); return 0; } switch (mon) { case 4: case 6: case 9: case 11: return 30; case 2: return year(ye) ? 29 : 28; default: return 31; } } public int method() { int count = 0; for (int i = 1900; i < this.y; i++) { count += year(i) ? 366 : 365; } for (int i = 1; i < m; i++) { count += month(this.y, i); } return count; } public void printCalendar() { int space = method() % 7; int count = month(y, m); System.out.println("==============万年历【" + y + "】年【" + m + "】月==================="); System.out.println("一\t二\t三\t四\t五\t六\t日"); System.out.println("=================================================="); int sum = 0; for (int i = 0; i < space; i++) { System.out.print("\t"); sum++; } for (int i = 1; i < count; i++) { sum++; System.out.print(i + "\t"); if (sum == 7) { System.out.println(); sum = 0; } } } public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.print("请输入年份:"); int y = sc.nextInt(); System.out.print("请输入月份:"); int m = sc.nextInt(); DynamicCalendar dc = new DynamicCalendar(y, m); dc.printCalendar(); } }
출력 결과:
관련 권장 사항: Java 시작하기
위 내용은 자바를 사용하여 영구 달력 만들기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!