一、SimpleDateFormat:

  这个类是用来格式化date类型数据为指定格式的时间的

  使用的而时候,总是区分不清 yyyy-mm-dd yyyy-MM-dd

  而使用不同的大小写字符格式化出来的时间是不一样的

  常用格式:yyyy-MM-dd HH:mm:ss (年-月-日 时:分:秒)

二、字符含义:有兴趣可以查看SimpleDateFormat的源码注释,详细有例

  1、yy表示Year, Y表示Week Year,计算方式不一样,通常使用【y】

  2、MM是为了和分钟的m区分,Month in year

  3、dd是Day in month,D是Day in year

  4、HH是24小时制Hour in day,hh是12小时制Hour in am/pm

  5、mm是分,Minute in hour

  6、ss是秒Second in minute,S是Millisecond

  7、aa是Am/pm marker

三、复串含义:

  1、MM复串是位数不够补足的,只写M的话,1月是不会显示01月的

四、心法:

  使用的时候知道了每个字符大小写代表的意义,就可以在使用的时候按位匹配,就知道时间格式的是否正确

五、大坑:时区设置问题

  SimpleDateFormat sdf = new SimpleDateFormat('yyyy-MM-dd HH:mm:ss',locale.CHINA);

  看着完美无懈可击,输出会发现,和你预想的时间完全不同,就是locale得设置问题导致的

  locale我的理解是设置的中英文,一般时间没有中文设置为English即可

  正确得姿势如下:

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
sdf.setTimeZone(TimeZone.getTimZone("GMT+8"));

  东八区!!!

  

转载于:https://www.cnblogs.com/hackxiyu/p/9448897.html

SimpleDateFormat-时间格式化中的大小写字符相关推荐

  1. java将从键盘输入的时间格式化_java 时间格式化中的模式字母

    java日期格式化中的模式字母有特定的意义,由于没有注意,今天在做工程的时候导致出现了奇怪的日期: 错误写法如下: 然而得到了错误的结果: 正确写法如下: 这样就得到了正确的结果 mm指的是分钟,MM ...

  2. 关于SimpleDateFormat时间格式化线程安全问题

    转载自  关于SimpleDateFormat时间格式化线程安全问题 昨天推送的文章<关于创建和销毁对象>一文中,2.1重复利用对象这一小节所举的SimpleDateFormat格式化时间 ...

  3. java 24字母_java 时间格式化中的模式字母

    java日期格式化中的模式字母有特定的意义,由于没有注意,今天在做工程的时候导致出现了奇怪的日期: 错误写法如下: 然而得到了错误的结果: 正确写法如下: 这样就得到了正确的结果 mm指的是分钟,MM ...

  4. DBeaver 编辑器中切换大小写字符转换

    1.窗口-首选项 2.首选项-编辑器-SQL编辑器-SQL格式化-Lower(小写)

  5. Java小白入门200例60之SimpleDateFormat时间格式化详解

    作者简介 作者名:编程界明世隐 简介:CSDN博客专家,从事软件开发多年,精通Java.JavaScript,博主也是从零开始一步步把学习成长.深知学习和积累的重要性,喜欢跟广大ADC一起打野升级,欢 ...

  6. java老鸟教你如何高效优雅的进行时间格式化

    前言 在日常项目开发过程中,相信大家一定都经常遇到时间格式化的场景.很多人可能都感觉非常简单,但是你的时间格式化方法真的优雅高效吗? 一.常见时间格式化方式 public static void ma ...

  7. java simpledateformat星期_Java中随心所欲格式化时间 SimpleDateFormat

    SimpleDateFormat 是一个以与语言环境相关的方式来格式化和分析日期的具体类.它允许进行格式化(日期 -> 文本).分析(文本 -> 日期)和规范化.SimpleDateFor ...

  8. java 指定时间转换_Java中使用Calendar进行获取指定时间,使用SimpleDateFormat进行格式化转换...

    java中使用Calendar获取指定的时间 public class DateTranslate { /** * 获取指定日期的间隔月份的第一天的日期 * @param date * @param ...

  9. oracle中如何格式化输出,【学习笔记】数据库日期时间格式化输出案例

    天萃荷净 分享一篇关于开发DBA在工作中常用到的日期时间格式化输出方法案例,含:mysql.sql server.oracle 3种数据库日期时间格式化输出 1.mysql数据库时间格式化输出 DAT ...

最新文章

  1. 创建DLL动态链接库——声明导出法
  2. python都可以干什么-python都能干嘛
  3. C++ Primer 5th笔记(chap 13 拷贝控制) 实例2内存管理测试结果
  4. PE学习(一)masm32开发环境和ollyICE使用
  5. “面试不败计划”:集合知识整体总结
  6. 测试Rockey 4 Smart加密锁的C语言代码
  7. 同比增长19.1%,软银第一季度净利2542亿日元
  8. 【数据库】NoSQL数据库简介
  9. 西瓜数据集的各种版本,比如说2.0,3.0,4.0都在这
  10. 选择覆盖方法设计测试用例
  11. 新颖的自我介绍_新颖的自我介绍6篇
  12. Android 、AndroidQ 、小米、 oppo等【后台启动界面】问题 解决方案
  13. c语言中front是什么,front用法,关于front的用法
  14. 解锁“绿色计算产业白皮书”,海量数据携手绿盟成员共促生态繁荣
  15. 抖音同城怎么引流?抖音如何引流到线下实体店?
  16. 深入分析网络编程中踩过的坑
  17. KPS同意约21亿美元巨资收购Garrett全部资产
  18. 银行核心系统入门简介
  19. 变电所运维云平台系统的研究与应用
  20. Web3中文|美前总统特朗普发布NFT,数千美元“换取”一顿晚餐

热门文章

  1. Android开发实用工具汇总-持续更新
  2. TCP/IP 协议标准简单描述
  3. ca开头的车是什么牌子_动车与高铁的区别是什么?很少人知道!让我来告诉你吧...
  4. 学习笔记Spark(二)—— Spark集群的安装配置
  5. ap的ht模式_AP6256 STA模式操作示例
  6. QT教程4:基本窗口实现
  7. 华为鸿蒙产业链股票,华为P40或用鸿蒙 华为产业链概念股一览
  8. 32位程序调用64位dll_电脑系统怎样区分32位和64位
  9. 一篇超级详细的jsp+servlet+jdbc+mysql检验登录操作(IntelliJ IDEA)
  10. 【Linux】40.date设定系统时间