日历小程序

/* * 因为Date类的大多数方法都已经废除了,所以Java提供了一个罗马日历类来取代Date类 * * **/ import java.util.*; public class CalendarTest { public static void main(String[] args) { GregorianCalendar d = new GregorianCalendar(); // 把今天日期保存在today变量中 int today = d.get(Calendar.DAY_OF_MONTH); int month = d.get(Calendar.MONTH); // 把日期设置为1号, 因为只设置了日期, 所以年和月还是当前的年和月 d.set(Calendar.DAY_OF_MONTH, 1); // 返回本月一号的星期数 int weekday = d.get(Calendar.DAY_OF_WEEK); // 每个汉字两个字符位,每两个汉字之间两个空格 System.out.println("日 一 二 三 四 五 六"); // 如果一号是星期日, 该循环一次不走, 星期一就走一次,一次四个空格 for(int i = Calendar.SUNDAY; i < weekday; i++) { // 四个空格 System.out.print(" "); } do { // 返回当前日期, 保存到day变量中 int day = d.get(Calendar.DAY_OF_MONTH); // 如果日期小于10,那么只有一个字符位,我们用一个空格来占一个字符位 if(day < 10) { System.out.print(" "); } System.out.print(day); // 因为today保存的是今天的日期, 在今天后面加"* ", 其它日期加" "。 if(day == today) { System.out.print("* "); } else { System.out.print(" "); } // 输出完以上信息后, 查看当前日期是否是星期六,如果是则换行 if(weekday == Calendar.SATURDAY) { System.out.println(); } // add方法和set不同, add方法是在当前日期的基础上加 // 设置当前日期为下一天 d.add(Calendar.DAY_OF_MONTH, 1); // 重新把当前日期的星期数保存到weekday变量中 weekday = d.get(Calendar.DAY_OF_WEEK); // 因为add方法的不断执行会使时间走到下一个月,这样就会跳出循环 } while(d.get(Calendar.MONTH) == month); /* 如果下月的一号不是星期日就换行 *(本月的最后一天不是星期六就换行, 因为是星期六的话会换行, 就不需再换行了) */ if(weekday != Calendar.SUNDAY) { System.out.println(); } } } }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值