Java中的LocalDate类——打印当前月份的日历程序清单

本文介绍了一个使用Java编程语言实现的简单程序,该程序能够获取当前日期,并以日历形式打印出当月的所有日期,其中今日日期会被特殊标记。程序利用了Java 8引入的新的日期时间API,包括LocalDate、DayOfWeek等类。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

import java.time.*;

public class Example {

public static void main(String[] args) {

LocalDate date=LocalDate.now();//获得当前时间

System.out.println(date);

int month=date.getMonthValue();//获取当前时间的月份

int today=date.getDayOfMonth();//获得当前时间的日期

date =date.minusDays(today-1);//将date设置为这个月的第一天

DayOfWeek weekday=date.getDayOfWeek();//变量weekday设置为DayOfWeek类型的对象

int value=weekday.getValue();//得到星期几的数值

System.out.println("Mon Tue Wed Thu Fri Sat Sun");//打印日历的主体,其中date遍历一个月中的每一天

for(int i=1;i<value;i++){

System.out.print(" ");//日历首行是缩进的

}

while(date.getMonthValue()==month){//打印日期值

System.out.printf("%3d",date.getDayOfMonth());

if(date.getDayOfMonth()==today)//若date是当前日期,则用*标记

System.out.print("*");

else

System.out.print(" ");

date=date.plusDays(1);//把date推进到下一天

if(date.getDayOfWeek().getValue()==1)//如果到达新的一周的第一天,则换行打印

System.out.println();

}

if(date.getDayOfWeek().getValue()!=1)

System.out.println();

}

}

输出结果:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值