您的位置:首页 > 编程语言 > Java开发

java8 打印本月日历

2016-12-28 15:52 501 查看
思想:打印1号前面的空格,再从1号顺序打印到本月的最后一天,其中星期天那天换行。

public class DateDemo {
public static void main(String[] args) {
LocalDate today = LocalDate.now();
//本月第一天和最后一天
LocalDate first =LocalDate.of(today.getYear(),today.getMonth(),1);
LocalDate lastDay =today.with(TemporalAdjusters.lastDayOfMonth());
//本月有多少天
int days= lastDay.get(ChronoField.DAY_OF_MONTH);
//本月第一天是星期几
int firstweek = first.get(ChronoField.DAY_OF_WEEK);
//打印星期
String[] ss={"一","二","三","四","五","六","日"};
for (int i = 0; i < 7; i++) {
System.out.print(" "+ss[i]);
}
System.out.println();

//打印空格
for (int i = 1; i <firstweek ; i++) {
System.out.printf("%-3s"," ");
}
//打印从1-最后一天
for (int i = firstweek,j=1; j <=days; i++,j++) {
if(i%7==0){
System.out.printf("%3d\n",j);
}else{
System.out.printf("%3d",j);
}
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: