在Java中,我们大多数情况下格式日期都是用的SimpleDateFormat,比如说把一个日期格式成"yyyy-MM-dd"的形式。

我们要注意的是,对于年份来说,大写的Y和小写的y其意义是不同的。

y 是Year,  Y 表示的是Week year

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

package time;

import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date; /**
* Created by sheting on 10/20/2017
*/
public class Test {
public static void main(String[] args) {
Calendar calendar = Calendar.getInstance();
// 2014-12-31
calendar.set(2014, Calendar.DECEMBER, 31);
Date strDate1 = calendar.getTime();
// 2015-01-01
calendar.set(2015, Calendar.JANUARY, 1);
Date strDate2 = calendar.getTime();
// 大写YYYY
DateFormat formatUpperCase = new SimpleDateFormat("YYYY/MM/dd");
System.out.println("2014-12-31 to YYYY/MM/dd: " + formatUpperCase.format(strDate1)); //2014-12-31 to YYYY/MM/dd: 2015/12/31
System.out.println("2015-01-01 to YYYY/MM/dd: " + formatUpperCase.format(strDate2)); //2015-01-01 to YYYY/MM/dd: 2015/01/01
// 小写YYYY
DateFormat formatLowerCase = new SimpleDateFormat("yyyy/MM/dd");
System.out.println("2014-12-31 to yyyy/MM/dd: " + formatLowerCase.format(strDate1)); //2014-12-31 to yyyy/MM/dd: 2014/12/31
System.out.println("2015-01-01 to yyyy/MM/dd: " + formatLowerCase.format(strDate2)); //2015-01-01 to yyyy/MM/dd: 2015/01/01
}
}

Java时间格式化时YYYY(大写)和yyyy(小写)的区别的更多相关文章

  1. Java日期工具类,Java时间工具类,Java时间格式化

    Java日期工具类,Java时间工具类,Java时间格式化 >>>>>>>>>>>>>>>>>&g ...

  2. C++ 里大写TRUE和小写true区别

    1.C++里大写TRUE和小写true区别 true是bool型的: TRUE是int型的,VC里这个是ms自己定义的: C++规定不允许只通过返回类型不同区别两个函数 2.MFC中的”false“和 ...

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

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

  4. Java时间格式化原来这么多玩法

    时间过得真是快,现在已经是2022年了.作为开发来说,时间处理是非常繁琐的.从Java 8开始有了新的时间API.时间的处理更加优雅,不再需要借助三方类库,而且线程安全.今天来梳理一下新API的格式化 ...

  5. Java时间格式化年-月-日-时间

    Date d = new Date(); System.out.println(d); //Sat Mar 16 20:58:56 CST 2019 System.out.println(d.toLo ...

  6. java 时间格式化(2016.04.12 12:32:55)

    输入的时间格式如:2016.04.12 12:32:55所示: 想要获取一定格式的日期,时间的方法 String startString = "2016.04.25 12:25:44&quo ...

  7. [原]时间格式化hh:mm:ss和HH:mm:ss区别

    hh:mm:ss   按照12小时制的格式进行字符串格式化 如果时间处于00:00:00——12:59:59,则返回的字符串正常 如果时间处于13:00:00——23:59:59,则返回的字符串是实际 ...

  8. JAVA 时间"dd/MMM/yyyy:HH:mm:ss Z", Locale.US

    工作遇到时间格式转换问题, 就是在日志分析时, 需要将格式“15/Oct/2009:14:00:00 +0800”转为格式“2009-10-15 14:00:00”, 找了好久没有找到合适的,终于在友 ...

  9. Java魔法堂:Date与日期时间格式化

    一.前言                                                                                       日期时间的获取.显 ...

随机推荐

  1. JavaScript设计模式系列学习笔记目录

    说明 本系列笔记参考书籍<JavaScript设计模式>.<JavaScript高级程序设计3> 参考博客:汤姆大叔博客:http://www.cnblogs.com/TomX ...

  2. jmeter(2)——元件简介、作用域及执行顺序

    上一篇主要介绍了一下 jmeter还有安装配置,这一篇来说一下它的目录组成和元件 1.目录组成 1>bin目录是可执行文件,双击jmeter.bat启动工具,也可以编辑这个批处理文件,设置jvm ...

  3. HDU 5690——All X——————【快速幂 | 循环节】

    All X Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Submi ...

  4. vue加载Element ui地址省市区插件-- element-china-area-data

    1.安装 npm install element-china-area-data -S 2.使用(引入) import { provinceAndCityData, regionData, provi ...

  5. Collatz 序列、逗号代码、字符图网格

    1.collatz序列 编写一个名为 collatz()的函数,它有一个名为 number 的参数.如果参数是偶数, 那么 collatz()就打印出 number // 2,并返回该值.如果 num ...

  6. python __new__()分析

    我们来看下下面类中对__new__()方法的实现: class Demo(object): def __init__(self): print '__init__() called...' def _ ...

  7. 工厂模式的C++、Java实现

    1.工厂模式UML 图1. 工厂模式UML 2.C++实现 类视图如下: 图2. 工厂模式C++实现的类图 其中,Factory实现为: //工厂类. class Factory { public: ...

  8. MySQL查询(未完结)

    MySql查询 单表查询: 查询所有字段 SELECT * FROM 表名; '*' 代表所有字段 查询指定字段 SELECT 字段名1, 字段名2 FROM 表名; 按照指定条件查询记录 1. 查询 ...

  9. Navicat工具、pymysql模块

    一 IDE工具介绍(Navicat) 生产环境还是推荐使用mysql命令行,但为了方便我们测试,可以使用IDE工具,我们使用Navicat工具,这个工具本质上就是一个socket客户端,可视化的连接m ...

  10. Git学习-Git时光机之版本回退(二)

    Git,是Linus花了两周时间用C写的一个分布式版本控制系统.牛人该怎么定义? 零.结论先行 倒叙总结一下: HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git ...