最近有一个功能是对输入的日期格式化,设计给出的范例是 YYYY-MM-dd HH:mm:ss,于是我简单验证了一下是可以的,然后就这么在手册里写了。然后偶然发现有地方也用yyyy啊,这个到底有神马区别啊,还是随便用呢。看了下jdk,这么说的:

也就是说Y表示的是Week year,可是,这个Week year又是什么。。jdk文档贴心地给出了Examples,然而并没有什么卵用。。

经过试验,得出的结果如下:Week year意思是当天所在的周属于的年份,一周从周日开始,周六结束,只要本周跨年,那么这周就算入下一年,例如2010.12.26,日历长成这样:

12.26所在的周的最后一天是2011.1.1,这天属于2011,所以2010.12.26的Week year就是2011,用YYYY做格式化,就会得到2011.12.26。

试验代码:

public static void main(String[] args) {
    Calendar calendar = Calendar.getInstance();
    // 2014-12-26
    calendar.set(2010, Calendar.DECEMBER, 26);
    Date strDate1 = calendar.getTime();
    
    SimpleDateFormat f1 = new SimpleDateFormat("YYYY-MM-dd");
    System.out.println("Result for YYYY: " + f1.format(strDate1));
    
    SimpleDateFormat f2 = new SimpleDateFormat("yyyy-MM-dd");
    System.out.println("Result for yyyy: " + f2.format(strDate1));
}

运行结果:
Result for YYYY: 2011-12-26
Result for yyyy: 2010-12-26
————————————————
版权声明:本文为CSDN博主「加班加班到天明」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/bewilderment/article/details/48391717

转载于:https://www.cnblogs.com/kakaisgood/p/11571618.html

JAVA中的SimpleDateFormat yyyy和YYYY的区别相关推荐

  1. java 去除时间中的PM_在Java中使用SimpleDateFormat(“ a”)显示AM / PM时间标记

    您可以使用SimpleDateFormat(" a")在Java中轻松显示AM / PM时间标记. 首先,要使用Java中的SimpleDateFormat类,请导入以下包.imp ...

  2. java calendar类_2020 年,你还在使用 Java 中的 SimpleDateFormat 吗?

    今天我和大家一起聊一聊SimpleDateFormat ,这都2020年了,怎么还在用SimpleDateFormat ? 其实,作为一名Java 程序员,我们会经常在编程时候和时间打交道,比如要把某 ...

  3. java中String new和直接赋值的区别

        Java中String new和直接赋值的区别     对于字符串:其对象的引用都是存储在栈中的,如果是编译期已经创建好(直接用双引号定义的)的就存储在常量池中,如果是运行期(new出来的)才 ...

  4. 【Java学习笔记之二十九】Java中的equals和==的用法及区别

    Java中的"equals"和"=="的用法及区别 在初学Java时,可能会经常碰到下面的代码: 1 String str1 = new String(&quo ...

  5. Java中print、printf、println的区别 详解

    Java中print.printf.println的区别详解 printf主要是继承了C语言的printf的一些特性,可以进行格式化输出 print就是一般的标准输出,但是不换行 println和pr ...

  6. Java中方法重载和方法重写的区别

    文章目录 1 Java中方法重载和方法重写的区别 1 Java中方法重载和方法重写的区别 主要区别如下: 方法重载: 在同一个类中 方法名相同 参数个数.顺序.类型不同 返回值类型.访问修饰符任意 方 ...

  7. Java中的LongAdder和AtomicLong有什么区别?

    ● Java中的LongAdder和AtomicLong有什么区别? 考点:JDK 参考回答: JDK1.8引入了LongAdder类.CAS机制就是,在一个死循环内,不断尝试修改目标值,直到修改成功 ...

  8. Java中 byte[]数组序列化和fastjson序列化区别

    Java中 byte[]数组序列化和fastjson序列化区别 Java中,对于对象可以通过序列化成byte数组或者序列化成json形式,这里做下两者的对比. 首先看下实现方式: 1 byte数组序列 ...

  9. JAVA中的方法和构造方法有什么区别

    JAVA中的方法和构造方法有什么区别 1.方法有返回类型,方法名小写,不能和类名相同:构造方法没有返回类型,void也不行,名与类名相同. 2.构造方法是初始化对象的重要途径,所以就算你给一个类没有定 ...

  10. 转 Java中final、finally、finalize的区别与用法

    Java中final.finally.finalize的区别与用法 1.简单区别: final用于声明属性,方法和类,分别表示属性不可交变,方法不可覆盖,类不可继承. finally是异常处理语句结构 ...

最新文章

  1. IntelliJ IDEA 2017.3.2 热加载(Hot Swap)
  2. 3、MySQL查看存储过程
  3. mysql 金额 类型,SQL实现根据类型对金额进行归类
  4. PHP实现对MongoDB的基础操作
  5. Python综合练习:学生信息管理(文件版)
  6. Buffer、ArrayBuffer、DataView互转(node.js)
  7. 图解Http学习第四章
  8. Neo4j安装及使用
  9. MySQL相关知识整理
  10. 13 岁女孩因发布JavaScript被捕,写个死循环你就进去了?
  11. 分享自己的超轻量级高性能ORM数据访问框架Deft
  12. 一个简单的多线程实现
  13. 【计算机科学】【2020.05】基于深度学习的计算蛋白质结构预测
  14. 计算机中人民币符号在哪儿,钱的符号电脑怎么打(人民币符号怎么输入)
  15. 手扎20190521——bolg示例
  16. 电阻(5)NTC电阻篇
  17. 简单的网页登录注册页面
  18. 【计算机组成原理】=【考研复试面试题】- 整合全家桶
  19. Linux比windows更适合工作和娱乐
  20. 基于国产FPGA 的MIPI硬核应用

热门文章

  1. 深度学习为什么要resize_为什么要学习演讲与口才
  2. php route取值,route命令详解
  3. java中wait方法使用实例_java中wait、notify和notifyAll的概念用法和例子?
  4. python软件安装及设置_入门Python——1.软件安装与基础语法
  5. 【深度学习入门到精通系列】U-net网络分析
  6. Android移动开发之【Android实战项目】Textview各项属性(全)
  7. 【Network Security!】虚拟化架构与系统部署
  8. abovedisplayskip无效_latex减少图片和图片解释文字之间的距离、调整公式与正文间距离,调整空白大小:...
  9. 软件性能测试关注点,盘点性能测试必须掌握的技术点
  10. Android 请求PHP接口, 返回json, 开头有问号, 解决方案