通过使用java中的LocailDate 获取本月的日历,并在控制台打印输出。若想放置其他位置,可调用以下值,设置本类为工具类也可以。代码如下:
import java.time.DayOfWeek;
import java.time.LocalDate;
public class dates {
public static void main(String[] args){
LocalDate date = LocalDate.now();
int month = date.getMonthValue(); //获得当前月
int today = date.getDayOfMonth(); //获得当前日
date = date.minusDays(today-1); //设置本月第一天
DayOfWeek week = date.getDayOfWeek();
int value = week.getValue(); //获得第一天星期几 星期一 == 1 ,星期二 == 2
System.out.println("Mon Tue Wed Thu Fri Sat Sun");
for (int i = 1; i < value; i++) {
System.out.print(" ");
}
//迭代打印
while(date.getMonthValue() == month){ //遍历本月每一天
System.out.printf("%3d",date.getDayOfMonth());
if(date.getDayOfMonth() == today){ //今天用*标记
System.out.print("*");
}else {
System.out.print(" ");
}
date = date.plusDays(1);
if (date.getDayOfWeek().getValue() == 1) {
System.out.println();
}
}
if (date.getDayOfWeek().getValue() != 1) {
System.out.println();
}
}
}