Java使用日期类实现打印输出各个年份的日历表

实现样式:

import java.time.LocalDate;
import java.util.Scanner;/*** @Author: SayHello* @Date: 2022/10/9 14:12* @Version: 1.0* @Introduction:*/
public class Exercise {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);printCalendar(2022);while (true){System.out.println("请输入你要查看日历的年份(输入-1退出):> ");int year = scanner.nextInt();if (year == -1){break;}printCalendar(year);}}/*** 判断是否是闰年* @param year* @return 是闰年返回1 不是返回0*/private static int isLeap(int year){if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0)){return 1;}else{return 0;}}/*** 该方法用于输出每年的12个月的日历* @param year*/private static void printCalendar(int year){//定义数组存放每个月对应的天数int[] days = {0,31,28,31,30,31,30,31,31,30,31,30,31};//判断是否是闰年,是闰年则二月份加1,否则不变days[2] += isLeap(year);//循环月份数组for (int i = 1; i < days.length; i++) {//格式化LocalDate date = LocalDate.of(year, i, 1);//得到每个月的第一天是每周的第几天int value = date.getDayOfWeek().getValue();//定义计数器,统计\t的个数int count = 0;System.out.println(year+"年"+i+"月"+" "+date.getMonth());System.out.println("一\t二\t三\t四\t五\t六\t日");//先输出\tfor (int j = 1; j < value; j++) {count++;System.out.print("\t");}//再输出值for (int k = 1; k <= days[i]; k++) {//如果已经有7个\t就换行if (count == 7){count = 0;System.out.print("\n");System.out.print(k+"\t");}else {System.out.print(k+"\t");}count++;}System.out.println();System.out.println("--------------------------");}}
}

Java使用日期类实现打印输出各个年份的日历表相关推荐

  1. Java YearMonth日期类应用

    Java YearMonth日期类应用 在项目中会遇到仅需要存取年月,由于数据库一般不支持不完整日期格式,因此日期之间转换比较麻烦.本文通过介绍YearMonth类实现年月日期存取过程. 1. 概述 ...

  2. java当中日期类的相关操作(学习笔记)

    一:引言 Calendar类是日历类,提供操作日历字段的方法,其中有常用操作 get 和 set 方法还有 add方法 详细用法请看码 二:上码 package cn.wyj.one;import j ...

  3. java时间日期类(Date、DateFormat、Calendar)学习

    1.Date类 常用方法:long getTime(),用于返回当前时刻的毫秒值 Date d = new Date(2000); System.out.println(d.getTime());// ...

  4. Java Date日期类中的getMonth()与getYear()提示过时警告

    Date日期类中的getMonth()与getYear()提示过时警告,这里的警告是方法过时,不建议使用. 解决方法,使用Calendar类,但是这里的获取月份是,会比数据中的月份少1,这里需要进行加 ...

  5. Java时间日期类处理(LocalDateTime、LocalDate相关操作、获取周几、工作日休息日节假日判定)

    1.LocalDateTime相关操作:(时间推移.计算两个LocalDateTime之间的时间间隔.转LocalDate),代码如下: // 获取LocalDateTime对象String date ...

  6. java查询日期类的表,JAVA菜鸟入门篇 - 时间处理相关类实例:打印该月日期表 (29)...

    利用前面我们所学习有关时间处理类,Date.DateFormat.SimpleDateFormat以及Calendar和GregorianCalendar类 编写一个按照用户定义格式(格式:2015- ...

  7. java 日期的加减_用java实现日期类的加减

    Java代码 public class test1 { public static void main(String[] args) { Calendar c = Calendar.getInstan ...

  8. day21 java的日期类

    1.对日期的处理 1.1获取当前系统时间 1.2日期格式化 1.3字符串转化成Date 1.4计算毫秒数 1.5有参数的构造方法

  9. java对日期Date类进行加减运算、年份加减,月份加减

    JAVA处理日期时间常用方法: 1.Java.util.Calendar Calendar 类是一个抽象类,它为特定瞬间与一组诸如 YEAR.MONTH.DAY_OF_MONTH.HOUR 等 日历字 ...

最新文章

  1. loadrunner——win7+LR11配置
  2. 继国务院后,上海也发布人工智能发展意见,2020年产业规模超千亿
  3. 利用js-xlsx.js插件实现Excel文件导入并解析Excel数据成json数据格式
  4. 【转载】使用javassist动态注入代码
  5. C++拷贝构造函数(深拷贝与浅拷贝)
  6. POJ - 3179 Corral the Cows(离散化+二分+二维前缀和)
  7. PHP实现加密的几种方式介绍
  8. win10安装ipython_windows10下安装IPython notebook 用来查看.ipynb文档
  9. 华科的计算机和建筑学哪个强,华中科技大学和华南理工大学相比,谁更占优势?看了也许就知道了...
  10. Docker下redis与springboot
  11. [ NOI 2005 ] 聪聪与可可
  12. IOS Andriod 抖音无水印下载和快手无水印下载
  13. Tomcat8配置SSL证书
  14. k8s修改集群IP--不重置集群
  15. linux dkms,DKMS简介
  16. 部署laravel项目报错:No input file specified.的解决办法
  17. linux rescue u盘,linux 0-rescue
  18. 基于arduino的火焰报警蜂鸣器播放音乐(外部中断)实验
  19. 【论文学习】基于区块链的档案数据保护和共享方法
  20. 确定sw1开关信号输入端口_机械光开关 MEMS光开关

热门文章

  1. vue中引入vuetify
  2. antd中前段处理字符串转为Int
  3. 你如何理解高可用性?
  4. 微信小程序 毕业设计题目大全 (新颖选题)
  5. VLAN之QinQ技术浅析
  6. Unity 触摸屏旋转和缩放
  7. Vue 图书管理案例
  8. jq修改input、textarea只读,不可修改
  9. Unity 在zSpace上使用鼠标控制相机旋转和鼠标指引式放大缩小,在触屏上手势位置为中心放大缩小
  10. 关于WM_QUIT消息的牛刀解释