Java常用类之日期相关类使用详解

Java常用类之日期相关类使用详解

Java提供了很多日期相关的类,包括日期、时间、日期时间、时间戳等类型,本文将对这些类的使用进行详解,方便大家在Java开发中更加灵活、方便的操作日期。

Date类

java.util.Date类是Java日期相关类的源头,代表着一个精确到毫秒级别的时间戳。但是,它已经过时不建议使用了。我们现在推荐使用java.time包里的类来进行日期操作。

LocalDate类

java.time.LocalDate类表示一个日期,只含有年、月、日三个元素。下面是一个示例代码:

//创建一个LocalDate对象
LocalDate localDate = LocalDate.of(2021, 1, 1);
System.out.println("日期:" + localDate.toString());
System.out.println("年:" + localDate.getYear());
System.out.println("月:" + localDate.getMonthValue());
System.out.println("日:" + localDate.getDayOfMonth());

//比较两个LocalDate对象
LocalDate localDate2 = LocalDate.of(2021, 2, 1);
System.out.println("日期:" + localDate2.toString());
System.out.println("是否在本日期之后:" + localDate2.isAfter(localDate));

LocalTime类

java.time.LocalTime类表示一个时间,只含有时、分、秒、毫秒四个元素。下面是一个示例代码:

//创建一个LocalTime对象
LocalTime localTime = LocalTime.of(12, 30, 15);
System.out.println("时间:" + localTime.toString());
System.out.println("时:" + localTime.getHour());
System.out.println("分:" + localTime.getMinute());
System.out.println("秒:" + localTime.getSecond());

//比较两个LocalTime对象
LocalTime localTime2 = LocalTime.of(13, 40, 20);
System.out.println("时间:" + localTime2.toString());
System.out.println("是否在本时间之后:" + localTime2.isAfter(localTime));

LocalDateTime类

java.time.LocalDateTime类表示一个日期时间,包含年、月、日、时、分、秒、毫秒七个元素。下面是一个示例代码:

//创建一个LocalDateTime对象
LocalDateTime localDateTime = LocalDateTime.of(2021, 1, 1, 12, 30, 15);
System.out.println("日期时间:" + localDateTime.toString());
System.out.println("年:" + localDateTime.getYear());
System.out.println("月:" + localDateTime.getMonthValue());
System.out.println("日:" + localDateTime.getDayOfMonth());
System.out.println("时:" + localDateTime.getHour());
System.out.println("分:" + localDateTime.getMinute());
System.out.println("秒:" + localDateTime.getSecond());

//比较两个LocalDateTime对象
LocalDateTime localDateTime2 = LocalDateTime.of(2021, 2, 1, 13, 40, 20);
System.out.println("日期时间:" + localDateTime2.toString());
System.out.println("是否在本日期时间之后:" + localDateTime2.isAfter(localDateTime));

Instant类

java.time.Instant类是一个表示时间戳(秒数)的类。它从1970年1月1日00:00:00开始算起。下面是一个示例代码:

//获取当前时间戳
Instant instant = Instant.now();
System.out.println("当前时间戳:" + instant.toString());

//获取指定时间戳
Instant instant2 = Instant.ofEpochSecond(1610536200);
System.out.println("指定时间戳:" + instant2.toString());

//比较两个时间戳
Instant instant3 = Instant.ofEpochSecond(1610636200);
System.out.println("指定时间戳:" + instant3.toString());
System.out.println("是否在本时间戳之后:" + instant3.isAfter(instant2));

Period类

java.time.Period类表示两个日期之间的差,只包含年、月、日三个元素。下面是一个示例代码:

//计算两个日期的差
LocalDate date1 = LocalDate.of(2021, 1, 1);
LocalDate date2 = LocalDate.of(2022, 2, 2);
Period period = Period.between(date1, date2);
System.out.println(period.getYears() + "年" + period.getMonths() + "月" + period.getDays() + "日");

Duration类

java.time.Duration类用来表示两个时间之间的差,只包括时、分、秒、毫秒四个元素。下面是一个示例代码:

//计算两个时间的差
LocalTime time1 = LocalTime.of(12, 30, 15);
LocalTime time2 = LocalTime.of(13, 40, 20);
Duration duration = Duration.between(time1, time2);
System.out.println(duration.toHours() + "小时" + duration.toMinutes() + "分钟" + duration.getSeconds() + "秒");

总结

以上就是Java常用的日期相关类的使用详解。使用这些类可以对日期进行相对比较准确的计算和处理,方便实现日期运算及处理。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java常用类之日期相关类使用详解 - Python技术站

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

相关文章

  • java9新特性Collection集合类的增强与优化方法示例

    Java 9 新特性之 Collection 集合类的增强与优化方法示例 1. Java 9 中的 Collection 接口新方法 Java 9 中为 Collection 接口增加了一些新的方法,下面是一些这些方法的简要说明。 of() 方法 of() 方法可以用来创建不可变集合,可以传入可变数量的参数,返回一个包含指定元素的不可变集合。 示例代码: L…

    Java 2023年5月26日
    00
  • java编写简单的ATM存取系统

    下面是Java编写简单的ATM存取系统的完整攻略。 1. 确定需求分析 在开始编写ATM系统之前,我们需要对系统的需求进行分析和确认。该系统的主要功能包括: 可以登录和注册账户 可以查询账户余额 可以取款和存款 可以修改账户密码 可以退出系统 2. 设计系统架构 确定了需求之后,我们需要设计ATM系统的整体架构。整个系统需要有以下几个模块: 用户登录和注册模…

    Java 2023年5月19日
    00
  • SpringBoot整合Mybatis-plus案例及用法实例

    SpringBoot是一个非常流行的Java开发框架,而Mybatis-Plus则是Mybatis框架的一个插件,提供了更加便捷的CRUD操作以及更优雅的SQL语句写法。下面就为大家详细讲解如何整合SpringBoot和Mybatis-Plus,并提供两个简单的用法示例。 1. 初始化SpringBoot项目 首先我们需要初始化一个SpringBoot项目,…

    Java 2023年5月20日
    00
  • Java实现MD5加密的方式与实例代码

    Java实现MD5加密的方式与实例代码 什么是MD5加密 MD5是一种常见的加密算法,主要用于对数据进行加密和校验。它可以将任意长度的消息变换成一个128位的消息摘要,用来保证信息传输完整性。 Java实现MD5加密的方式 Java中实现MD5加密,可以使用Java提供的MessageDigest类。该类允许应用程序通过调用update方法来处理数据,并使用…

    Java 2023年5月23日
    00
  • windows下vscode+vs2019开发JNI的示例

    下面是“Windows下VSCode+VS2019开发JNI的示例”的完整攻略。 背景介绍 Java Native Interface(JNI)是Java和本地C/C++代码交互的一种极其灵活的方式。JNI允许Java应用程序在其运行过程中调用本地C/C++应用程序,并让本地应用程序调用Java应用程序。该过程包括使用Java编写代码,编译Java代码生成J…

    Java 2023年5月26日
    00
  • 详解vue.js+UEditor集成 [前后端分离项目]

    详解 vue.js+UEditor 集成 [前后端分离项目] 的完整攻略,具体步骤如下: 1. 前置准备 在开始之前,我们需要先准备好以下工具和环境: Vue.js 2.0+ UEditor 1.4.3.3+ Vue-UEditor-wrapper 插件 Node.js 8.0+ Vue CLI 3.0+ Webpack 4.0+ 2. 安装 Vue-UEd…

    Java 2023年6月15日
    00
  • java 数据库连接与增删改查操作实例详解

    Java 数据库连接与增删改查操作实例详解 数据库连接 在 Java 中,可以通过使用 JDBC 驱动程序来实现与数据库的连接。步骤如下:1. 加载驱动程序2. 建立数据库连接3. 关闭数据库连接 加载驱动程序 Java 中的 DriverManager 类提供了一个用于加载 JDBC 驱动程序的 registerDriver() 方法。驱动程序可以通过 C…

    Java 2023年5月19日
    00
  • FckEditor 中文配置手册详细说明

    FckEditor 中文配置手册详细说明 FckEditor 是一个免费的 HTML 编辑器,它具有跨浏览器兼容性和 WYSIWYG(所见即所得)编辑功能。本文将提供 FckEditor 中文配置手册的详细说明,包括安装、配置和使用 FckEditor 的示例。 安装 FckEditor 下载 FckEditor,可以在官方网站(https://ckedit…

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