java Calendar踩坑:Calendar.HOUR是12小时制
想要得到2021年7月1日0时0分0秒0毫秒,代码如下:
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.YEAR, 2021);
calendar.set(Calendar.MONTH, 6);
calendar.set(Calendar.DATE, 1);
calendar.set(Calendar.HOUR, 0);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.MILLISECOND, 0);
System.out.println(calendar.getTime());
但输出结果和预期不一致:
Thu Jul 01 12:00:00 CST 2021
后来才知道,Calendar.HOUR是12小时制,Calendar.HOUR_OF_DAY才是24小时制,所以代码要改成:
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.YEAR, 2021);
calendar.set(Calendar.MONTH, 6);
calendar.set(Calendar.DATE, 1);
calendar.set(Calendar.HOUR_OF_DAY, 0);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.MILLISECOND, 0);
System.out.println(calendar.getTime());
执行结果:
Thu Jul 01 00:00:00 CST 2021
那么,如何使用12小时制输出上面的结果呢?尝试发现,将Calendar.HOUR设置为-12就可以了。
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.YEAR, 2021);
calendar.set(Calendar.MONTH, 6);
calendar.set(Calendar.DATE, 1);
calendar.set(Calendar.HOUR, -12);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.MILLISECOND, 0);
System.out.println(calendar.getTime());
执行结果:
Thu Jul 01 00:00:00 CST 2021
参考:
https://blog.csdn.net/zsg88/article/details/70156979
java Calendar踩坑:Calendar.HOUR是12小时制相关推荐
- Java中如何将时间设置为12小时制并区分上下午
//中文 上午/下午SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd a hh:mm");System.out.pri ...
- 【Java笔记+踩坑】SpringBoot基础3——开发。热部署+配置高级+整合NoSQL/缓存/任务/邮件/监控
导航: [黑马Java笔记+踩坑汇总]JavaSE+JavaWeb+SSM+SpringBoot+瑞吉外卖+SpringCloud/SpringCloudAlibaba+黑马旅游+谷粒商城 目录 ...
- 【Java笔记+踩坑】SpringBoot基础2——运维实用
导航: [黑马Java笔记+踩坑汇总]JavaSE+JavaWeb+SSM+SpringBoot+瑞吉外卖+SpringCloud/SpringCloudAlibaba+黑马旅游+谷粒商城 目录 ...
- 【Java笔记+踩坑】SpringBoot——基础
导航: [黑马Java笔记+踩坑汇总]JavaSE+JavaWeb+SSM+SpringBoot+瑞吉外卖+SpringCloud/SpringCloudAlibaba+黑马旅游+谷粒商城 目录 ...
- android calendar 24小时制,Android 使用SimpleDateFormat以及Calendar转换时间为12小时制和24小时制时间格式...
由于项目需要,有些地方要使用12小时制时间格式,而有些地方使用的24小时制时间格式 通过研究代码,原来...So easy,现将实现的方法写下来和大家分享 使用SimpleDateFormat时格式化 ...
- 西安交通大学915考研--编程题Java代码踩坑(2020年真题)
西安交通大学915考研–编程题Java代码踩坑(2020年真题) 目录 西安交通大学915考研--编程题Java代码踩坑(2020年真题) 2020.1--寻找方程组的解 2020.2--几组数中筛选 ...
- 【Java】Date类型获取年月日时分秒的两种方法(12小时制、24小时制)
Java的Date类型是,提供用来描述日期时间的类,它可以存储时间的年月日.时分秒的信息.但是如何从Date的实例中获取这些信息呢? 以前Date提供了一系列的get方法来获取,但是这些方法现在都被弃 ...
- java实现12小时制和24小时制的时间
java实现12小时制和24小时制的时间转换 //****************@Testpublic void atest(){Date today = new Date();SimpleDate ...
- 【Java】将输入的 24 小时制时间转换为 12 小时制时间
一.题目描述 题目内容: 编写一个程序,要求用户输入24小时制的时间,然后输出显示12小时制的时间. 输入格式: 在一行中输入带有中间的:符号(半角的冒号)的24小时制的时间,小时和分钟均采用2位数字 ...
最新文章
- jQuery 学习笔记之九 (jQuery 图片提示 )
- Spring AOP学习
- 香港计算机mphil申请成功案例,香港稀有CS MPhil录取:申请也有起死回生的惊喜...
- firefox扩展开发(八) :控件激活
- matlab脑电信号特征提取,一种脑电信号实时特征提取方法与流程
- DotNetNuke(DNN)皮肤制作--如何修改DNN中众多的CSS文件
- 【1】Keras复习之模型,层,训练,评估与预测
- Linux宝库名人轶事栏目 | 智能化之边缘计算浅析
- 六十八个经典管理小故事
- 机器人编程按时巡线_活动回顾 丨巡线机器人编程活动带小朋友体验游戏设计的乐趣...
- python PIL图片转PDF
- Android 外网远程连接真机进行开发调试
- mysql skip-grant-tables my.cnf_使用SKIP-GRANT-TABLES解决MYSQLROOT密码丢失
- python nonetype iterable_无法解决“NoneType”对象不是iterable类型
- 中国古代30大名将VS100名将排行(按时间顺序)
- PyQt5渐变圆环水波进度条+透明淡入(多线程信号)
- JMeter 远程启动报错:java.rmi.ConnectException: Connection refused to host: 127.0.0.1; nested exception is:
- 趣味js之斗牛算法详解
- Oracle ERP 仓库(inventory) 词汇 2
- Swoole 介绍以及三步快速安装 swoole 教程
热门文章
- vue定时器问题(单个定时器和循环定时器)
- android自动获取系统时间,Android--获取系统时间的几种方式
- Linux远程终端连接
- Linux sftp远程连接
- 漏洞复现-webmin漏洞系列分析与利用
- 微服务框架 SpringCloud微服务架构 26 数据聚合 26.5 多条件聚合
- 苹果x屏幕出现一条绿线_部分用户反映苹果 iPhone 12 屏幕出现划痕
- svn更新报错:svn:Checksum mismatch while updating;expected: '9a8c8856b74e4545bf2e52e2b54b23a6', actual: '
- 第九届“国际信誉品牌”和第二十届“深圳知名品牌”申报指南通知
- 常用正则匹配及字符范围