简单了解JAVA SimpleDateFormat yyyy和YYYY的区别

yizhihongxing

下面是详细的攻略。

什么是 SimpleDateFormat 类

SimpleDateFormat 类是用于格式化和解析日期的类,它允许指定自定义日期时间格式,例如 "yyyy-MM-dd HH:mm:ss"。在使用 SimpleDateFormat 类时,需要注意它提供的不同日期时间格式字符的含义。

在下面的解释中,我们将特别关注 yyyyYYYY 的区别。

yyyy 和 YYYY 的区别

在 SimpleDateFormat 类中,"y" 代表年份,其中 yyyy 表示的是四位数字年份,YY 表示的是两位数字年份。而 YYYY 表示的是基于周的年份。下面分别介绍它们之间的区别。

yyyy 表示的四位数字年份

yyyy 表示四位数字年份,例如 2021 年。这个格式字符要注意的是必须使用大写字母,"y" 的小写字母 "yyy" 是无效的。

示例代码如下:

import java.text.SimpleDateFormat;
import java.util.Date;

public class DateFormatExample {
   public static void main(String[] args) {
      Date now = new Date();

      SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
      String formattedDate = sdf.format(now);
      System.out.println("yyyy: " + formattedDate);
   }
}

输出结果如下:

yyyy: 2021-09-15 06:29:02

YYYY 表示基于周的年份

YYYY 表示基于周的年份,它带有一些额外的规则。如果日期属于一个年的最后一个周,那么这个周的下一年就是下一个年。同时,如果日期属于一个年的第一个周,那么这个周的上一年就是上一个年。

示例代码如下:

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Calendar;

public class WeekBasedDateFormatExample {
   public static void main(String[] args) {
      Date now = new Date();
      Calendar cal = Calendar.getInstance();
      cal.setTime(now);

      SimpleDateFormat sdf = new SimpleDateFormat("YYYY-'W'ww-u");
      String formattedDate = sdf.format(now);
      System.out.println("YYYY: " + formattedDate);
   }
}

输出结果如下:

YYYY: 2021-W37-3

在这个例子中,我们使用了 YYYY-'W'ww-u 的格式来表示基于周的年份。其中,"W" 表示周数,"u" 表示星期几。最终输出的格式为 "YYYY-WW-D",其中 "D" 表示星期几从 "1"(代表周一)到 "7"(代表周日)。

总结

  • 使用大写字母 "YYYY" 可以表示基于周的年份,而 "yyyy" 则表示的是指定的年份。
  • 在使用 SimpleDateFormat 类时,我们需要根据自己的需求选择适合的格式字符,以获得正确的日期时间输出格式。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:简单了解JAVA SimpleDateFormat yyyy和YYYY的区别 - Python技术站

(0)
上一篇 2023年5月20日
下一篇 2023年5月20日

相关文章

  • SpringBoot HikariCP连接池详解

    SpringBoot HikariCP连接池详解 本文介绍如何使用SpringBoot和HikariCP来管理MySQL数据库连接池。 什么是HikariCP? HikariCP是一个高效的、快速的、轻量级的JDBC连接池,取名自日本的“光之屋”。与其他连接池相比,它有更快的启动时间、更小的内存占用以及更高的性能。 SpringBoot集成HikariCP …

    Java 2023年5月20日
    00
  • 详解Java集合类之List篇

    详解Java集合类之List篇攻略 1. List概述 List是Java集合框架中的基本接口之一,代表了一组有序的数据,可以包含重复的元素。List扩展了Collection接口,所以继承了所有Collection接口的方法,同时还有一些操作有序数据的特定方法。常用的List实现包括ArrayList和LinkedList。 2. List常用方法 2.1…

    Java 2023年5月26日
    00
  • IDEA中如何正确快速打jar包的方式

    下面是关于在IntelliJ IDEA中如何正确快速打jar包的方式的完整攻略: 1. 使用Maven插件打包 Maven插件是一种流行的打包方式,使用Maven插件可以很方便地进行打包操作,而且功能十分强大。下面是打包Java项目为jar包的步骤: 在pom.xml文件中添加Maven插件。 在<build>标签下添加以下内容: <plu…

    Java 2023年5月19日
    00
  • Java实现树形List与扁平List互转的示例代码

    以下是Java实现树形List与扁平List互转的完整攻略。 1. 概述 树形结构和扁平结构是常用的数据结构之一,在业务开发过程中常常需要互相转换。本攻略给出Java实现树形List与扁平List互转的示例代码。 2. 树形List转为扁平List 树形结构的定义: public class TreeNode { private String id; pri…

    Java 2023年5月26日
    00
  • Java(JDK/Tomcat/Maven)运行环境配置及工具(idea/eclipse)安装详细教程

    Java运行环境配置教程 Java安装 下载JDK安装包,选择与自己操作系统相匹配的版本 双击安装包,根据提示完成安装 打开命令行窗口,输入以下命令查看Java版本是否安装成功 java -version Tomcat安装 下载Tomcat安装包,选择与自己操作系统相匹配的版本 解压缩安装包到指定目录 打开命令行窗口,进入Tomcat的bin目录,并运行st…

    Java 2023年5月19日
    00
  • Java抢红包的红包生成算法

    下面是“Java抢红包的红包生成算法”的完整攻略。 一、概述 “Java抢红包的红包生成算法”是一种随机分配金额的算法,可以用于生成指定金额的红包,并按照一定的规则把红包分配给多个人。该算法可以用于各种在线支付、社交娱乐等场景。 二、算法原理 “Java抢红包的红包生成算法”基于二倍均值法实现,具体原理如下: 假设红包总金额为totalMoney,红包个数为…

    Java 2023年5月19日
    00
  • Spring\SpringBoot配置连接数据库的方法

    下面是Spring\SpringBoot配置连接数据库的方法的完整攻略。 1. Spring中配置连接数据库的方法 1.1 在Spring配置文件中配置 在Spring配置文件中配置连接数据库的方式是最常见的方法。 <!– 数据库连接信息 –> <bean id="dataSource" class="or…

    Java 2023年5月20日
    00
  • Java中关于字典树的算法实现

    Java中的字典树,也叫前缀树,是一种基于字符串快速查找的数据结构。它的基本性质是:根节点为空,每个节点代表一个字母,沿着从根节点到叶子节点的路径可以得到一个字符串。通过在树形结构中查找匹配的字符串,可以实现对字符串的高效管理和检索。 具体实现过程如下: 一、数据结构定义 我们可以采用一个节点类,来定义字典树中的每个节点。代码如下: class TrieNo…

    Java 2023年5月19日
    00
合作推广
合作推广
分享本页
返回顶部