java键入时间hhmm_日期-SimpleDateFormat上的Java HH:mm和hh:mm之间的差异
使用内置的本地化格式
如果这是为了向用户显示一天中的某个时间,那么在20个中的至少19个中,您无需关心DateTimeFormatter、hh或H。我建议您使用类似以下内容的方法:
DateTimeFormatter defaultTimeFormatter
= DateTimeFormatter.ofLocalizedTime(FormatStyle.SHORT);
System.out.format("%s: %s%n",
Locale.getDefault(), LocalTime.MIN.format(defaultTimeFormatter));
关键是它在不同的默认语言环境中提供了不同的输出。 例如:
DateTimeFormatter
本地化格式的设计符合不同文化的期望。 因此,它们通常为用户提供更好的体验,并且省去了编写格式模式字符串的麻烦,因为它总是容易出错。
此外,我建议您不要使用DateTimeFormatter。该课程非常麻烦,而且很幸运,已经过时了。 相反,我使用了Java.time,这是现代的Java日期和时间API。 与它一起工作要好得多。
四个小时的字母:H,h,k和K
当然,如果您需要解析具有指定格式的字符串,并且还有非常特殊的格式要求,则最好使用格式模式字符串。 实际上,有四个小时的字母可供选择(从文档中引用):
Symbol Meaning Presentation Examples
------ ------- ------------ -------
h clock-hour-of-am-pm (1-12) number 12
K hour-of-am-pm (0-11) number 0
k clock-hour-of-day (1-24) number 24
H hour-of-day (0-23) number 0
实际上,使用了DateTimeFormatter和hh。 据我所知,不是H和HH(为完整起见,它们可能只是包含在内)。 但是,让我们看看它们都在起作用:
DateTimeFormatter timeFormatter
= DateTimeFormatter.ofPattern("hh:mm a HH:mm kk:mm KK:mm a", Locale.ENGLISH);
System.out.println(LocalTime.of(0, 0).format(timeFormatter));
System.out.println(LocalTime.of(1, 15).format(timeFormatter));
System.out.println(LocalTime.of(11, 25).format(timeFormatter));
System.out.println(LocalTime.of(12, 35).format(timeFormatter));
System.out.println(LocalTime.of(13, 40).format(timeFormatter));
DateTimeFormatter
如果您不希望前导零,则只需指定一个模式字母,即DateTimeFormatter而不是hh或H而不是HH。解析时它仍将接受两位数字,并且要打印的数字大于9时,两位 数字仍将被打印。
链接
Oracle教程:Date Time说明如何使用java.time。
DateTimeFormatter的文档。
java键入时间hhmm_日期-SimpleDateFormat上的Java HH:mm和hh:mm之间的差异相关推荐
- java键入时间hhmm_最简单的时间格式类SimpleDateFormat
最简单的时间格式类 import java.lang.*; import java.text.*; import java.util.*; public class timeformat{ publi ...
- Java 记录(3) java 时间格式化:SimpleDateFormat 函数 :java 获取当前时间
Java 记录(3) java 时间格式化:SimpleDateFormat 函数 :java 获取当前时间 初 代码: 运行结果 初 希望能写一些简单的教程和案例分享给需要的人 代码: packag ...
- Java中的时间和日期(上)
自从JDK 1.0开始,Java就提供了Date来处理时间和日期,作为老古董自然有很多东西是过时的.然后出现了Calendar来解决了很多问题,但是Calendar使用比较复杂,并且有些反人类的地方. ...
- java final date_Java中的时间和日期(上)
自从JDK 1.0开始,Java就提供了Date来处理时间和日期,作为老古董自然有很多东西是过时的.然后出现了Calendar来解决了很多问题,但是Calendar使用比较复杂,并且有些反人类的地方. ...
- Java 8时间和日期API 20例
本文由 ImportNew - Sandy 翻译自 javarevisited.欢迎加入 翻译小组.转载请见文末要求. 伴随lambda表达式.streams以及一系列小优化,Java 8 推出 ...
- linux java mail 时间,Javamail在Windows上工作,而不是在Linux上
因此,简单的非加密的无附件电子邮件在Linux和Windows中都可以使用. 当我尝试发送附件或使用TLS加密发送电子邮件时,javamail会在Linux上崩溃,而不是在Windows上崩溃. Tr ...
- java对象如何保存日期_如何在Java中的日期对象中存储和检索毫秒?
我正在制作一个读取字幕(.srt)文件的基本Java程序,我想将每次存储为Date对象.我真的只需要跟踪小时,分钟,秒和毫秒(到3位数).我想我能用这个存储它: String start = &quo ...
- 银河麒麟配置java环境_中标麒麟系统上安装Java、Eclipse指南.doc
中标麒麟系统上安装Java环境指南 Java_NeoKylin_Install_Guide 2015-01-12 修订记录 序号 版本号 日期 修订人 摘要 1 1.0 目录Content 概述 -- ...
- java程序员 ipad_App Store 上的“JAVA程序员自学编程”
*****Java程序员的给力助手***** -----本应用是一款java程序员自学参考手册,内容涵盖了所有java自学入门教程.高级教程以及数十道java经典面试题及代码答案,十分适合java开发 ...
最新文章
- Linux shell 学习笔记(6)— vim 编辑器使用方法及技巧
- COLLATE 函数
- 数字化如何影响药物开发
- WINDOWS和LINUX下带时间的PING包监控脚本
- Windows系统下nodejs、npm、express的下载和安装教程详解
- NN如何在表格数据中战胜GBDT类模型
- ZOJ Monthly, November 2012
- 一文讲清,MySQL如何解决多事务并发问题
- HTML源码-网页123算数题小游戏源码
- php下的ssm模式,编码风格:Mvc模式下SSM环境,代码分层管理
- Javascript 笔记与总结(1-3)arguments
- 如何修复最常见的 macOS 11 Big Sur 问题?
- java http下载_java http下载文件
- MOSSE 相关滤波器详解
- 博弈论模型——Part 2 Part 3
- 链表-链表中环的入口结点
- 兔子、狼、狐狸、王八
- demonstration记忆_记忆英语单词方法20种
- python爬虫爬拼多多销量_Python爬取各大汽车销量信息
- 前端开发中,js时间与时间戳的转换