Calendar设定月份时要注意日期
先看下代码
public static void main(String[] args) {
int dataMonth = 4;
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
Calendar dataCalendar = Calendar.getInstance();
//今天日期,2021-03-31
System.out.println("今天:" + dateFormat.format(dataCalendar.getTime()));
//设定月份为4月
dataCalendar.set(Calendar.MONTH, dataMonth - 1);
System.out.println("目标:" + dateFormat.format(dataCalendar.getTime()));
}
代码很简单,那结果是多少呢?
今天:2021-03-31
目标:2021-05-01
???怎么是5月1号?看了下日历,知道原因了,4月只有30天,没有31号,所以就把多出来的1天自动加上,成了5月1号了!
所以这块在设定的时候要注意了,平常可能是逻辑正常的,但到月底的时候,问题就显出来了!
Calendar设定月份时要注意日期的更多相关文章
- Android Calendar获取年月日时分秒毫秒
开始使用new Date()测试,并用通过date.getMonth(),和date.getDay()获取,不过后来发现这两个访求是jdk1.1版本的,现在已经不用了,而且结果也不正确. ; int ...
- Java calendar获取月份注意事项
Calendar中月份month得取值是从0开始,到11,对应着日历中的1-12月.所以在用此取月份的话,需要在原有基础上加1.
- oracle 根据一个时间段获取这个时间段内所有月份、天数、日期
注:本文来源于< oracle 根据一个时间段获取这个时间段内所有月份.天数.日期 > 获取月份列表: SELECT TO_CHAR(ADD_MONTHS(TO_DATE('2014-10 ...
- 修复回写PR时到料日期重复扣减检验周期的问题:
问题描述: 修复回写PR时到料日期重复扣减检验周期的问题:系统回写的外购半成品PR交货日期未按采购周期回写,从8-10日开始均于10天交期回写,例以下9-5日今天回写的PR,采购周期12天,结果回写到 ...
- JDK神坑:JAVA中Calendar的月份Month少1
很多朋友在使初次使用Calendar时,会发现月份莫名其妙对不上,显示的结果总是比预期中小1个月,检查好几遍也没发现程序有错,于是开始抓狂.其实这个时候,只要去看JDK就会明白问题所在.JDK告诉我们 ...
- DCalendar增加月份选择功能--简单jQuery日期选择器插件改动
做时间插件的时候,很多都会遇到要做选择月份的插件,但是DCalendar提供的api只支持日期选择,最近遇到这个问题,所以调整了一下源码,话不多说,先看效果吧 点击日期插件,出现上图,再点击月份就直接 ...
- Java,Calendar -- 获取当前日期、当月月初日期、月末日期
public class CalendarTest { public static void main(String[] args) { // 获取当前年份.月份.日期 Calendar cale = ...
- LCD副屏-CPU,内存,时显,日期显示
文章结构: 项目概述 成品预览 项目框架 硬件资料,代码 项目槽点 -项目概述- 以前的旧模块搁置很久没用,最近看到圈子很多倒腾电脑副屏的,咱虽然没钱,但是闲啊,刚好手头有这些东西,开干. 目的: 显 ...
- 微软BI 之SSIS 系列 - 在 SSIS 输出平面文件时根据运行日期生成不同的文件名称
开篇介绍 在 SSIS 中操作文件的输入和输出是非常方便的,这个例子讲解一个最简单的需求:比如每天从数据库中查询一批数据要输出到文件,每天产生一个文件,那么文件的名称按照"文件名+日期&qu ...
- Calendar计算一个月前的日期,踩坑记录
错误示范:calendar.set(Calendar.MONTH, calendar.get(Calendar.MONTH) - 1);//获取一个月前的今天这种写法假设传入的日期为2019-03-3 ...
随机推荐
- Linux内核机制—smp_hotplug_thread
基于Linux-5.10 一.简介 1. 只是一个创建per-cpu线程执行用户提供的回调的机制. 2. 内核中已存在的注册 static struct smp_hotplug_thread idle ...
- 关闭win10“快速启动”功能
windows正常运行时间的统计问题 windows任务管理器中,在性能选项卡中可以查看系统的运行时间(开机时间) 正常情况下,如果电脑关机,那么再次开机后,该时间会被重置 但是,如果电脑处于上面所说 ...
- (Fiddler)Fiddler 的相关操作
Fiddler 的几个常用操作: 1. Statistics:会话信息统计 1)选择当前页面的第一个请求和最后一个请求,通过计算 statistics,就知道该页面总共的耗时时间. 2)查出当前页面耗 ...
- GuiLite 学习笔记(一) Mainloop与ViewTree
以GuiLiteSamples中的HelloSlide 为例,剖析一下GuiLite的设计思路和刷新机制: 首先是main.cpp; 可以分成3部分: 1.根据fb mode拿到对应的phy_fb, ...
- 常用IBatis属性
<?xml version="1.0" encoding="utf-8" ?> <sqlMap namespace="GoodDet ...
- VS code 安装后gdb调试无法显示STL内容的问题
bar {...} std::_Vector_base<TSample<MyTraits>, std::allocator<TSample<MyTraits> &g ...
- 【TensorFlow】InternalError: Failed copying input tensor
TensorFlow-GPU 执行模型训练时报错: InternalError: Failed copying input tensor from /job:localhost/replica:0/t ...
- 记录自己在对订单进行按日期查询时使用的一种查询的方法,这里的orders是订单表,你也可以改成别的什么表对于最终数据不会造成影响,除非你那个表的数据只有几条那样就会出现查不到日期的情况
SELECT @date := DATE_ADD(@date, INTERVAL + 1 DAY) days FROM ( SELECT @date := DATE_ADD("2019-06 ...
- struts2 显示表格
<%@ taglib uri="/struts-tags" prefix="s"%> <h3>All Records:</h3&g ...
- SATA硬盘的数据和电源接口定义(转)
现在 SATA设备越来越普及,包括STAT硬盘和光驱基本都已经是 SATA接口的了,以前的老式电源输出接口一般都是20针供主板加上4针的电源供硬盘也就是说以前的电脑电源给硬盘供电没有设计15针 SAT ...