Java实现打印日历(java.time写的)

mac2025-09-09  15

日历

简单的日期-时间类的练习例子实现代码测试结构补充一小点

简单的日期-时间类的练习例子

实现代码

import java.time.LocalDate; import java.time.format.TextStyle; import java.util.Locale; import java.util.Scanner; public class PrintCalendar { public static void main(String[] args) { Scanner in=new Scanner(System.in); System.out.println("输入一个年份(如2019 )"); printCalendars(in.nextInt()); } public static void printCalendars(int year) { for (int month = 1; month < 13; month++) { System.out.println(); //得到本个月的第一天日期 LocalDate dates = LocalDate.of(year, month, 1); String monthName = dates.getMonth().getDisplayName(TextStyle.FULL, Locale.getDefault()); //返回当前月的天数 int daysOfMonth = dates.lengthOfMonth(); System.out.println(year+"年 "+monthName); System.out.println("-----------------------------------"); System.out.printf("%10s%10s%10s%10s%11s%10s%10s%n", "日","一","二","三","四","五","六"); int dayOfWeek = dates.getDayOfWeek().getValue(); for (int i = 1; i <= dayOfWeek&&dayOfWeek!=7; i++) { System.out.printf("%5s", " "); } //输出该月的日期 for (int i = 1; i <= daysOfMonth; i++) { System.out.printf("%5d",i); if ((dayOfWeek+i)%7==0) { System.out.println(); } } } } }

参考:Java语言程序设计第三版

测试结构

补充一小点

通用的日期,周日才是一个星期的第一天。

最新回复(0)