Java 日历

java打印一个月份的日历表 问题描述:实现某个月份日历(公历)的打印(本例打印2020年5加粗样式月份日历)。 关键点:确定每个月1号对应的星期数,每个月前面的空格是如何出现的。 补充知识: ①日历月份前面的空格是从1900年到当前年份的当前月份的前面所有天数对7求余得到的; ②闰年有366天,平年有365天; ③能被4整除但不能被100整除或者能被400整除的年份就是闰年; ④每年的4、6、9、11月份是30天;2月份闰年是29天,平年是28天;其他月份是31天。 开始使用java实现这个项目: //打印一个月的日历 public 阅读详情

原始版

import java.time.*;

/**
 * @version 1.5 2015-05-08
 * @author Cay Horstmann
 */

public class CalendarTest
{
   public static void main(String[] args)
   {
      LocalDate date = LocalDate.now();
      int month = date.getMonthValue();
      int today = date.getDayOfMonth();

      date = date.minusDays(today - 1); // Set to start of month
      DayOfWeek weekday = date.getDayOfWeek();
      int value = weekday.getValue(); // 1 = Monday, ... 7 = Sunday

      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();
   }
}

改进版

import java.time.*;

public class CalendarTest
{
   public static void main(String[] args)
   {
      LocalDate date = LocalDate.now();
      System.out.println(date);
      int month = date.getMonthValue();
      int today = date.getDayOfMonth();

      date = date.minusDays(today - 1); // Set to start of month
      DayOfWeek weekday = date.getDayOfWeek();
      int value = weekday.getValue(); // 1 = Monday, ... 7 = Sunday
      value = value % 7 + 1;
      System.out.println("Sun Mon Tue Wed Thu Fri Sat");
      LocalDate value_stemp = LocalDate.now();
      value_stemp = value_stemp.minusDays(today - 1);
      
      while (!(value_stemp.getMonthValue() == month - 1 && value_stemp.getDayOfWeek().getValue() == 7))
      {
         value_stemp = value_stemp.minusDays(1);
      }
      
      while (!value_stemp.toString().equals(date.toString()))
      {
         System.out.printf("%3d", value_stemp.getDayOfMonth());
         value_stemp = value_stemp.plusDays(1);
      }
      
      while (date.getMonthValue() == month || date.getDayOfWeek().getValue() != 7)
      {
         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() == 7) System.out.println();
      }
   }
}
QMT实盘交易入门:5分钟搞定ETF全球配置策略(附完整代码) 本文详细介绍了如何使用QMT平台实现ETF全球配置策略,从环境准备到策略编写、实盘部署全流程仅需5分钟。通过xtquant库对接交易所接口,提供完整的动量轮动策略代码,帮助投资者快速掌握自动交易技术,优化全球资产配置。 阅读详情

相关推荐

WebDriverAgent 菜鸟解析篇

WebDriverAgent 是一个用于模拟移动设备浏览器的 Python 库,可以用来在 PC 上模拟移动设备的浏览器操作,从而进行自动化测试。下面是一个菜鸟对 WebDriverAgent 源码的解析篇,希望能对初学者有所帮助。

DJ355的博客 1222

Calendar导入java_Java基础教程——Date类和Calendar类

Date类和Calendar类都是关于日期的类,都在java.util包中,使用时需要import。Datejava.util.Date类的对象用来表示时间和日期,用得最多的是获取系统当前日期和时间,精确到毫秒。Java中有两个Date类,还有一个是java.sql.Date,这个类一般不用,即使在数据库中也不推荐使用。写代码时注意导入的包一定是java.util包。import java.uti...

weixin_32384503的博客 1101

kubernetes rook 安装 cephfs

ceph root kubernete osd uuid partuuid

天津托的博客 1543

java面向对象程序设计第3版习题参考解答 doc

等待状态的线程不会主动进到线程队列中排队等待CPU资源,必须由其他线程调用notify()方法通知它,使得它重新进到线程队列中排队等待CPU资源,以便从中断处继续运行。等待状态的线程不会主动进到线程队列中排队等待CPU资源,必须由其他线程调用notify()方法通知它,使得它重新进到线程队列中排队等待CPU资源,以便从中断处继续运行。其它线程如果在使用这个同步方法时不需要等待,那么它使用完这个同步方法的同时,应当用notifyAll()方法通知所有的由于使用这个同步方法而处于等待的线程结束等待。

ccccc12111的博客 3981

Visual Studio Code 打开java项目

在 Visual Studio Code 中打开并运行一个 Java 项目之前,你需要确保你已经完成了一些初始设置。

2675

uniapp:K线图,支持H5,APP

K线,1分钟搞定。备注详细,无需理解,直接复制即可。

sunluyi的博客 4576

Java实现日历

已知的一种计算方法:我们每个月的第一天是接着上个月的最后一天的,然后我们知道1900年的1月1日是星期一,那我们可以把从1900年到我们指定日期的前一个月的总天数求出来对7取余,就是上一个月最后一天的星期数(也是这个月开始前面的空格数)。下拉框的作用是让我们选择日期,我们可以给下拉框组件添加事件监听,如果使用下拉框进行选择日期,则调用一个表格更新(tableUpDate)方法。那么我们该如何实现呢?这就是一个可更新的日历实现方法,多尝试、多思考,努力成为大佬!我们可以直接写出两个方法来判断。

codekingo的博客 5537

三维变换矩阵实战——三维点云的旋转、缩放、镜像、错切、平移、正交投影

旋转矩阵:右边矩阵是点云的原始坐标,左边的是旋转矩阵可视化:绕x轴旋转90度。

weixin_43850909的博客 8230

Java中Calendar日期类介绍

Calendar 类是一个抽象类,它为特定瞬间与 YEAR、MONTH、DAY_OF—MONTH、HOUR 等日历字段之间的转换提供了一些方法,并为操作日历字段(如获得下星期的日期) 提供了一些方法。创建 Calendar 对象不能使用 new 关键字,因为 Calendar 类是一个抽象类,但是它提供了一个getInstance() 方法来获得 Calendar类的对象。getInstance() 方法返回一个 Calendar 对象,其日历字段已由当前日期和时间初始化。

LiuQQ567的博客 1万+

5.1 rocr-runtime libhsakmt event 机制全景—从 Doorbell 到 Signal

本文介绍了ROCm/KFD中的Event机制架构,主要解决GPU异步计算中的反馈问题。Event机制分为三层:硬件层触发事件,内核层管理事件通知,用户态接收处理。事件类型分为三大类:同步类事件(如SIGNAL、QUEUE_EVENT)用于任务完成通知,异常类事件(如MEMORY、HW_EXCEPTION)报告错误,拓扑类事件(如NODECHANGE)处理设备变更。该机制通过共享内存和中断实现高效通信,避免CPU轮询开销。后续文章将深入内核实现、Thunk层封装和多队列完成检测实战。

图形/计算GPU的驱动与虚拟化技术分享园地 1307

基于STM32、HAL库的MCP4651-503E/ST数字电位器驱动程序设计

@param channel: 通道 (0: A通道, 1: B通道)* @param channel: 通道 (0: A通道, 1: B通道)// SPI1 SCK/MISO/MOSI引脚配置。* @param hmcp: MCP4651句柄。* @param hmcp: MCP4651句柄。* @param hmcp: MCP4651句柄。* @param hmcp: MCP4651句柄。* @param hmcp: MCP4651句柄。* @param hspi: SPI句柄。

corlin6688的博客 137

用Java编写日历表(3种方式)

大家好,今天我和大家分享一下用Java编写日历表,我用了3种方式实现这一功能的。 首先我们来看看一个日历表有什么特征。在这里我就把我电脑上的日历表截下来分析一下 我们从上向下看:这个日历表显示了年份,月份,星期数即星期一到星期日,每一天对应一个星期数,天数每隔七天换一下行,当月的总天数。还有一个就是每个月的第一天是接着上个月的最后一天的。 我们发现我们想要创建一个日历表就只需要知道年份,月份和该月份的第一天是星期几还有就是该月份的总天数就行。 年份和月份是我们自己设置要查看的年份和月份.

l9528的博客 2万+

Python 爬虫实战:从零搭建第一个爬虫程序(附完整代码)

本文介绍了Python网络爬虫的入门实战,以豆瓣Top250电影榜单为例,详细讲解爬虫开发全流程。内容包括爬虫基础原理、环境搭建、请求发送与响应处理、数据解析与保存等核心环节,并提供了可直接运行的完整代码示例。文章还分析了常见问题解决方案,并强调了爬虫开发的合规注意事项。通过本教程,读者可快速掌握Python爬虫的基本思路和实操技巧,为后续深入学习BeautifulSoup、XPath等进阶技术打下基础。

2503_91057718的博客 2316

java 实现日历

题目:java 日历 时间:2019.3.8 介绍:做一个窗体显示日历,最上边是两个按钮切换上下月,中间是日期展示,最下方显示当前的年月。 注:所有代码在Eclipse下调试运行。 代码: 窗体布局: Frame.java package calendar; import java.awt.BorderLayout; import java.awt.GridLayout; impor...

yandaxiaxiaolin的博客 1万+

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

使用JAVA写一个简单的日历

使用JAVA写一个简单的日历 import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.GregorianCalendar; im...

这知识它不进脑子啊 1万+

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

java打印日历

源代码: import java.util.Calendar; import java.util.Date; import java.util.GregorianCalendar; public class MyDate { public static void main(String[] args) { MyDate date = new MyDate(); date.myCale

續寫經典 4631

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

Java打日历

第一步:做一个月,比如2020年1月第一天是星期三。 import java.util.Scanner; public class TestRiLi { public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.println("请输入年:"); int year = input.nextInt(); Sy

mtm001的专栏 934

日历java代码_java 日历代码实现

System.out.println("请输入日期(按照格式:2030-3-10):");//在控制台输入//String str="2016-9-26";Scanner scanner=new Scanner(System.in);String str=scanner.nextLine();//将字符串转为日期,记住 abstract class DateFormat,所以要 new 子类Dat...

weixin_30759991的博客 2244

怎么用java做日历_怎么用java做日历?实例讲解

Java是一种高级语言,可以用到很多领域中,这不,用java还可以做日历,那么怎么用java做日历?今天我们就给大家讲解一下用java做日历的方法,学会大家也可以做一个日历出来!我们需要用到两个类:SimpleDateFormat和Calendar。首先看看这两个类的用法:类 SimpleDateFormatSimpleDateFormat 是一个以与语言环境有关的方式来格式化和解析日期的具体类。...

weixin_33144635的博客 1119

用java编写日历_如何用Java制作一个简易日历

简易日历制作记录一下Java实现的一个日历小程序,效果图如下:实现以上的效果,我们需要用到两个类:SimpleDateFormat和Calendar。首先看看这两个类的用法:类 SimpleDateFormatSimpleDateFormat 是一个以与语言环境有关的方式来格式化和解析日期的具体类。它允许进行格式化(日期(Date) -> 文本(String))、解析(文本(String) ...

weixin_34757565的博客 2453

java实现日历

import java.util.Date; import java.util.Scanner; /** * java实现日历 * 一年有12个月,其中有30天的月份有,四 六 九 十一, * 有31天的月份,有一 三 五 七 八 十 十二 * 一个月是2月,闰年是29天,平年是28天 *公元年分除以4可整除但除以100不可整除,为闰年||公元年分除以400可整除,为闰年(366天) *公元年分除以4不可整除,为平年||公元年分除以100可整除但除以400不可整除,为平年(365天) * */ pub

weixin_44093711的博客 2057

java布局与日历案例

java布局和日历案例实现效果如图: 三个类实现 CalendarMainClass.java public class CalendarMainClass { public static void main(String args[]) { CalendarFrame frame=new CalendarFrame(); frame.setBounds(100,100,360,300); frame.setVisible(true); frame.s

qq_46388354的博客 3054

Java生成日历

学习目标: 使用Java生成日历 学习内容: 1.Java自带的Time库 2.循环结构 #代码展示: 1.库导入 import java.time.DayOfWeek; import java.time.LocalDate; 2.代码主体 public class CalendarTest { public static void main(String[] args) { LocalDate date = LocalDate.now(); int month = date.getMonth

weixin_46014205的博客 855

java输入年月输出日历_java 输入年月,获取日历表

/*做日历作业:输入一个时间如: 2016-11就显示2016年11月的日历显示*/import java.util.*;class calendar {public static void main(String[] args){System.out.print("请选择年份(大于1990年):");Scanner input = new Scanner(System.in);int year ...

weixin_39553776的博客 2369

Java实现日历编写

java语言实心简单的日历实现

常cc加油 2448

java中输出日历_Java输出日历写法

package TestString_2;import java.text.ParseException;import java.util.Calendar;import java.util.GregorianCalendar;import java.util.Scanner;/*** 日期表格输出*/public class TestCalendar2 {public static void m...

weixin_35705523的博客 1007
上一篇: ifstream和istream转型与报错
下一篇: 感知机
Janton Wang
博客等级 码龄9年 44粉丝 101原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值