`

利用Calendar输出指定年份的全年日历

 
阅读更多
  1. /**
  2. *@authorbzwm
  3. *
  4. */
  5. importjava.io.BufferedReader;
  6. importjava.io.IOException;
  7. importjava.io.InputStreamReader;
  8. importjava.util.Calendar;
  9. importjava.util.GregorianCalendar;
  10. publicclassCalendarTest{
  11. publicstaticvoidmain(String[]args)throwsIOException{
  12. BufferedReaderin=newBufferedReader(newInputStreamReader(System.in));
  13. System.out.print("请输入一个年份:");
  14. Stringyears=in.readLine();
  15. CalendarPrintercp=newCalendarPrinter(years);
  16. cp.printCal();
  17. }
  18. }
  19. classCalendarPrinter{
  20. privateintyear;
  21. privatestaticfinalintmonthCount=12;
  22. publicCalendarPrinter(Stringyears){
  23. if(!years.matches("//d{4}")){
  24. System.out.println("yearthatinputtedisillagel.");
  25. return;
  26. }
  27. year=Integer.parseInt(years);
  28. }
  29. publicvoidprintCal(){
  30. //constructdascurrentdate
  31. GregorianCalendargCal=newGregorianCalendar();
  32. //setyear
  33. gCal.set(Calendar.YEAR,year);
  34. for(intmonth=0;month<monthCount;month++){
  35. gCal.set(Calendar.MONTH,month);
  36. printOut(gCal);
  37. }
  38. }
  39. privatevoidprintOut(Calendarcal){
  40. intmonth=cal.get(Calendar.MONTH);
  41. //setcaltostartdateofthemonth
  42. cal.set(Calendar.DAY_OF_MONTH,1);
  43. intweekday=cal.get(Calendar.DAY_OF_WEEK);
  44. //printheading
  45. System.out.println("SunMonTueWedThuFriSat");
  46. //indentfirstlineofcalendar
  47. for(inti=Calendar.SUNDAY;i<weekday;i++)
  48. System.out.print("");
  49. do{
  50. //printday
  51. intday=cal.get(Calendar.DAY_OF_MONTH);
  52. if(day>0)
  53. System.out.print(""+day+"");
  54. else
  55. System.out.print(""+day+"");
  56. //startanewlineaftereverySaturday
  57. if(weekday==Calendar.SATURDAY)
  58. System.out.println();
  59. //advancedtothenextday
  60. cal.add(Calendar.DAY_OF_MONTH,1);
  61. weekday=cal.get(Calendar.DAY_OF_WEEK);
  62. }while(cal.get(Calendar.MONTH)==month);
  63. //theloopexitswhendisday1ofthenextmonth
  64. //printfinalendoflineifnecessary
  65. if(weekday!=Calendar.SUNDAY)
  66. System.out.println();
  67. }
  68. }
分享到:
评论

相关推荐

    python使用calendar输出指定年份全年日历的方法

    本文实例讲述了python使用calendar输出指定年份全年日历的方法。分享给大家供大家参考。具体实现方法如下: import calendar print "Show a given years monthly calendar" print '' year = int(raw_input("Enter ...

    Calendar and Countdown(日历和倒计时)-2017.11.13.1.zip

    全年日历,让您一眼即可找到任何指定的日期并从任何日期起向上/向下计数。 创建任意数量的笔记并将日常添加自定义颜色以跟踪发生的事情。 以周数显示当前年份,无缝地前后移动以查找任何一年的任何日期。点击箭头...

    Calendar年日历

    描述中提到的“一整个年份的日历,可以上下滑动翻页”,意味着该日历应用采用了滚动或滑动的交互方式,让用户通过手指上下移动来浏览不同月份。这种设计提高了用户体验,使得在众多日期间切换变得更加流畅。另外,它...

    vue实现年日历视图及休息日工作日设置功能

    `data`应包含当前年份、月份数组、日历网格等。`methods`应包含计算周末和假期的逻辑: ```javascript export default { data() { return { year: new Date().getFullYear(), months: ['一月', '二月', ...], ...

    php小型日历类库.zip

    每页显示一日信息的叫日历,每页显示一个月信息的叫月历,每页显示全年信息的叫年历。有多种形式,如挂历、座台历、年历卡等,如今又有电子日历。中国始有历法大约在四千多年以前。根据甲骨文中的一页甲骨历,证明殷...

    日历记事本 java源代码

    这个程序包含四个核心类:CalendarPad(日历面板)、NotePad(记事本)、Month(月份)以及Year(年份)。这些类分别代表了日历应用的不同组成部分,下面将详细解释每个类的功能和可能涉及的知识点。 1. **Calendar...

    基于MATLAB的年历系统设计及实现.pdf

    在本文中,作者使用MATLAB开发了一个年历系统,能够方便地显示指定年份的全年日历。 1. **年历系统概述** 传统的年历常由单片机配合实时时钟芯片(如DS1302)制作,但这种方式需要硬件制作和复杂的编程。相比之下...

    Java实验报告(同名17600).doc

    3. 年份日历:与月份日历类似,但需处理全年的日期,可能需要更复杂的逻辑来处理不同月份天数的变化。 4. 堆栈实现:实验要求使用数组模拟堆栈数据结构,实现`push()`、`pop()`、`isFull()`、`isEmpty()`和`length...

    用C语言编写一个年历.docx

    标题所述的“用C语言编写一个年历”是一项C语言编程任务,旨在设计一个能够显示任何年份全年的日历的程序。这个项目是黑龙江八一农垦大学理学院《C程序设计》课程的一部分,由五位学生共同完成,他们分别负责程序的...

    linux命令大全~~~~~~

    - 显示2001年的全年日历: ```sh cal 2001 ``` ### 使用案例与实践建议 #### `at` 命令实践建议 1. **计划日常维护任务**:可以利用`at`命令安排系统备份或其他周期性任务。 2. **临时性任务**:对于只需要...

    C++制作万年历

    接下来,我们需要设计用户界面,让用户输入年份,然后程序会打印出该年份的全年的日历。这里可以使用控制台输出,或者如果具备图形界面编程基础,可以使用如Qt或GTK+等库来创建更友好的图形界面。 在代码实现过程中...

    打印万年历

    【描述】中的"简单的JAVA写的万年历"指的是使用Java语言编写的一个程序,它可以打印出1900年以来任意一年的全年的日历。1900年是公历的一个重要年份,因为它是格里高利历(即我们通常使用的日历)的一部分,而Java...

    rili.rar_Java编程_Java_

    "rili.rar"这个压缩包可能包含了一个示例项目,演示了如何使用Java来实现一个基本的日历功能,显示特定年份的全年日历。让我们深入探讨一下Java中的日期和时间处理以及如何创建这样的日历应用。 首先,Java提供了`...

    Calendar and Countdown-crx插件

    显示全年日历并计入任意数量的日期。将注释和颜色添加到几天,检查它们之间的距离。 为全年日历,使您可以一目了然地查找任何给定日期,并从任何日期查找/下降。创建任意数量的备注,并将自定义颜色添加到几天以跟踪...

    c++编写的 万年历

    接着,我们来构建全年日历。这需要计算每个月的第一天是星期几。这涉及到蔡勒公式(Zeller's congruence),一个用于计算任何公历日期对应的星期几的算法。通过应用这个公式,我们可以为每个月份生成准确的起始星期...

    php中for循环制作年历.pdf

    年历是一个记载日期等相关信息的出版物,通常每页显示一日信息的叫日历,每页显示一个月信息的叫月历,每页显示全年信息的叫年历。 函数描述: 1. 根据用户输入的年份输出对应的年历 2. 用户可输入年份的取值范围...

    PHP完整的日历类(CLASS)

    首先,类`Calendar`定义了几个属性,包括`YEAR`, `MONTH`, 和 `DAY`,分别用于存储当前的日历对象所表示的年、月和日。此外,`WEEK`数组存储了一周七天的中文名称,而`_MONTH`数组则包含了全年的月份中文名称。 接...

    Python中基本的日期时间处理的学习教程

    `calendar`模块还提供了其他功能,如计算某个月的天数(`calendar.monthrange(year, month)`), 获取特定年份的天数(`calendar.isleap(year)`判断是否为闰年),或者生成全年日历(`calendar.calendar(year)`等。...

    台历小精灵

    "台历小精灵"是一款由VB(Visual Basic)编程语言开发的共享软件,主要功能是提供全年的日历展示,并且支持自定义的定时提醒和报时服务。这款软件覆盖了1901年至2100年的时间范围,旨在为用户提供方便、直观的日历...

Global site tag (gtag.js) - Google Analytics