操作Date时间方法

文章目录

    • 1. 两个Date时间类型数值做对比
      • 1、使用Date类:
      • 2、使用LocalDateTime类:
    • 2. 字符串转Date
      • 1、使用SimpleDateFormat类:
      • 2、使用DateTimeFormatter类:
    • 3. new Date()格式化字符串 年月日
    • 4. 两个date数据类型相差天数
      • 1、 计算两个日期之间的天数差:
      • 2、 计算两个日期之间的天数差:

1. 两个Date时间类型数值做对比

在Spring Boot中,你可以使用Java的java.util.Date类或java.time.LocalDateTime类来进行两个日期时间的对比。以下是两种常见的方法:

1、使用Date类:

import java.util.Date;public class DateComparisonExample {public static void main(String[] args) {Date date1 = ... ; // 第一个日期时间Date date2 = ... ; // 第二个日期时间// 对比两个日期时间int comparison = date1.compareTo(date2);if (comparison < 0) {System.out.println("date1 在 date2 之前");} else if (comparison > 0) {System.out.println("date1 在 date2 之后");} else {System.out.println("date1 和 date2 相同");}}
}

在上面的示例中,我们使用compareTo()方法对比了两个Date对象。compareTo()方法返回一个负整数、零或正整数,表示第一个日期时间是在、等于还是在第二个日期时间之后。

2、使用LocalDateTime类:

import java.time.LocalDateTime;public class LocalDateTimeComparisonExample {public static void main(String[] args) {LocalDateTime dateTime1 = ... ; // 第一个日期时间LocalDateTime dateTime2 = ... ; // 第二个日期时间// 对比两个日期时间int comparison = dateTime1.compareTo(dateTime2);if (comparison < 0) {System.out.println("dateTime1 在 dateTime2 之前");} else if (comparison > 0) {System.out.println("dateTime1 在 dateTime2 之后");} else {System.out.println("dateTime1 和 dateTime2 相同");}}
}

在上面的示例中,我们使用compareTo()方法对比了两个LocalDateTime对象。同样,compareTo()方法返回一个负整数、零或正整数,用于表示第一个日期时间是在、等于还是在第二个日期时间之后。

你可以根据自己的需要选择使用Date类或LocalDateTime类来进行日期时间的对比操作。

2. 字符串转Date

在Spring Boot中,你可以使用SimpleDateFormat类或者DateTimeFormatter类将字符串转换为java.util.Date类型的日期对象。以下是两种常见的方法:

1、使用SimpleDateFormat类:

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;public class DateConversionExample {public static void main(String[] args) {String dateString = "2023-07-28";SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");try {Date date = dateFormat.parse(dateString);System.out.println(date);} catch (ParseException e) {e.printStackTrace();}}
}

在上面的示例中,我们创建了一个SimpleDateFormat对象,指定了日期字符串的格式"yyyy-MM-dd"。使用parse()方法,我们将日期字符串解析为Date对象。

2、使用DateTimeFormatter类:

import java.time.LocalDate;
import java.time.format.DateTimeFormatter;public class DateConversionExample {public static void main(String[] args) {String dateString = "2023-07-28";DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");LocalDate localDate = LocalDate.parse(dateString, formatter);Date date = java.sql.Date.valueOf(localDate);System.out.println(date);}
}

在上面的示例中,我们使用DateTimeFormatter和LocalDate将日期字符串解析为本地日期对象。然后,我们使用java.sql.Date类将本地日期转换为Date对象。

无论你选择哪种方法,都可以将字符串转换为Date对象。请根据你的需求选择合适的方法。

3. new Date()格式化字符串 年月日

在Spring Boot中,你可以使用java.util.Date类和java.text.SimpleDateFormat类来格式化日期为字符串。下面是一个示例:

import java.util.Date;
import java.text.DateFormat;
import java.text.SimpleDateFormat;public class DateFormattingExample {public static void main(String[] args) {Date currentDate = new Date();DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");String formattedDate = dateFormat.format(currentDate);System.out.println(formattedDate);}
}

上述代码中,我们创建了一个SimpleDateFormat对象,并通过"yyyy-MM-dd"设置了日期的格式。

然后,使用dateFormat.format(currentDate)方法将currentDate转换为字符串,按照指定的格式进行格式化。

最后,formattedDate就是格式化后的年月日字符串。

你可以根据需要调整SimpleDateFormat对象的格式字符串,例如:

●"yyyy-MM-dd":年-月-日,例如:“2023-07-26”
●"yyyy/MM/dd":年/月/日,例如:“2023/07/26”
●"MM/dd/yyyy":月/日/年,例如:“07/26/2023”
●"dd.MM.yyyy":日.月.年,例如:“26.07.2023”

根据指定的格式化字符串,可以将Date对象格式化为相应的年月日字符串。

4. 两个date数据类型相差天数

在Spring Boot中,你可以使用java.time.LocalDate类来计算两个日期之间相差的天数。下面是一个示例:

1、 计算两个日期之间的天数差:

import java.time.LocalDate;
import java.time.temporal.ChronoUnit;// 假设有两个日期
LocalDate date1 = LocalDate.of(2021, 10, 1);
LocalDate date2 = LocalDate.of(2021, 10, 5);long days = ChronoUnit.DAYS.between(date1, date2);
// 计算相差的天数

上述代码使用ChronoUnit.DAYS.between()方法计算出date1和date2之间的天数差。它返回的是一个long类型的值。

在Spring Boot中,你可以使用java.util.Date类和java.util.Calendar类来计算两个日期之间相差的天数。下面是一个示例:

2、 计算两个日期之间的天数差:

import java.util.Date;
import java.util.Calendar;
import java.util.concurrent.TimeUnit;// 假设有两个日期
Date date1 = // 第一个日期
Date date2 = // 第二个日期long diffInMillies = Math.abs(date2.getTime() - date1.getTime());
long diff = TimeUnit.DAYS.convert(diffInMillies, TimeUnit.MILLISECONDS);
// 计算相差的天数

上述代码通过获取日期对象的时间戳,计算两个时间戳之间的毫秒数差异,并使用TimeUnit.DAYS.convert()方法将其转换为天数。 Math.abs()函数用于确保获取到的差值为正数。 注意:上述代码中的date1和`date2

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/650974.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SPA单页面的讲解(超级详细)

目录 一、什么是SPA 二、SPA和MPA的区别 单页应用与多页应用的区别 单页应用优缺点 三、实现一个SPA 原理 实现 hash 模式 history模式 四、题外话&#xff1a;如何给SPA做SEO SSR服务端渲染 静态化 使用Phantomjs针对爬虫处理 一、什么是SPA SPA&#xff08;sin…

这是一片测试文章

这是一片测试文章 这是一片测试文章 这是一片测试文章 这是一片测试文章 这是一片测试文章 这是一片测试文章 真的是测试文章 -111122225555444433333333222211111 dddddaaa

❤css实用

❤ css实用 CSS渐变色边框&#xff08;Gradient borders方法的汇总 5种-代码可直接下载&#xff09; 资源链接 https://download.csdn.net/download/weixin_43615570/88779950?spm1001.2014.3001.5503 给 border 设置渐变色是很常见的效果&#xff0c;实现这个效果有很多思路…

近20k stars,GSYVideoPlayer一款优秀的视频播放器

近20k stars&#xff0c;GSYVideoPlayer一款优秀的视频播放器 引言 在现代社会中&#xff0c;视频已经成为人们获取信息和娱乐的重要形式。为了提供更好的观看体验&#xff0c;开发一款优秀的视频播放器变得至关重要。而GSYVideoPlayer作为一款功能强大、稳定可靠的视频播放器…

浙江机电职业技术学院第八届新生亮相赛(同步赛)D.一种很新的阶乘【线性筛+一分为二法】

原题链接&#xff1a;https://ac.nowcoder.com/acm/contest/73799/D 时间限制&#xff1a;C/C 2秒&#xff0c;其他语言4秒 空间限制&#xff1a;C/C 262144K&#xff0c;其他语言524288K 64bit IO Format: %lld 题目描述 夜雷很喜欢特别大的数字&#xff0c;曾经一度算阶乘…

没指定spring-boot-maven-plugin版本导致编译失败,这坑你踩过没

文章目录 1. 前言2. 组件版本信息3. 事件经过3.1 本地通过maven命令打包3.2 定位问题步骤3.2.1 核对spring-boot-maven-plugin版本信息3.2.2 spring-boot-maven-plugin版本错误原因 3.3 解决方案 4.结论 1. 前言 我们在平时开发过程中关注的比较多的是项目开发时依赖包的版本以…

lightdb object支持static函数

文章目录 背景介绍语法示例 背景 在信创适配中&#xff0c;从Oracle迁移过来的程序使用STATIC函数。为此LightDB从24.1版本开始&#xff0c;对该功能进行了支持。 介绍 LightDB 24.1版本中对象方法包括下列几种&#xff1a; MEMBER方法&#xff1a;MEMBER方法可以被对象实例…

数据结构(绪论+算法的基本概念)

文章目录 一、绪论1.1、数据结构的基本概念1.2、数据结构三要素1.2.1、逻辑结构1.2.2、数据的运算1.2.3、物理结构&#xff08;存储结构&#xff09;1.2.4、数据类型和抽象数据类型 二、算法的基本概念2.1、算法的特性2.2、“好”算法的特质2.2.1、算法时间复杂度2.2.2、算法空…

java数学计算工具类 double精确的加法算法 double精确的减法算法

java数学计算工具类 double精确的加法算法 double精确的减法算法 精确的乘法算法 对精确的除法运算&#xff0c;当发生除不尽的 保留小数、数值精度 精确的加法算法:2.27 精确的减法算法:0.01 精确的乘法算法:1.2882 相对精确的除法运算&#xff0c;当发生除不尽的情况时&…

【WebGPU】简介和开始

简介 WebGPU 是一种 API&#xff0c;用于在 Web 应用中访问 GPU 的功能。在 WebGPU 出现之前&#xff0c;有一个 WebGL&#xff0c;它提供了 WebGPU 的部分功能。它开创了一种新的富媒体 Web 内容类别&#xff0c;并且开发者也利用它构建了许多精彩的内容。不过&#xff0c;它…

领域驱动设计(Domain-Driven Design DDD)——通过重构找到深层次模型1

一、概述 重构就是在不改变软件功能的前提下重新设计它。开发人员无需在着手开发之前做出详细的设计决策&#xff0c;只需要在开发过程中不断小幅调整设计即可&#xff0c;这不但能够保证软件原有的功能不变&#xff0c;还可使整个设计更加灵活易懂。 我们面临的真正挑战是找到…

【机器视觉实验】机器视觉实验四——基于knn的场景图像检索、基于SVM的人脸图像识别

一、实验内容 实验内容包含要进行什么实验,实验的目的是什么,实验用到的算法及其原理的简单介绍。 (1) 编程实现基于knn的场景图像检索 a) 至少实现三种特征组合进行检索; b) 使用recall与precision分析不同特征组合对检索精度的影响。 (2) 实现基于SVM的人脸图像识…

java使用MD5加密

java使用MD5加密 源字符串&#xff1a;三四五 使用 UTF-8字符集字符集加密后的结果为:f2615f1dab4520fc1e1a79ed6a4f7b37 用 GB2312 字符集加密后的结果为:1dbb006b41466197c486592727af516f 用 GBK 字符集加密后的结果为:1dbb006b41466197c486592727af516f

TCP 状态转换以及半关闭

TCP 状态转换&#xff1a; 上图中还没有进行握手的时候状态是关闭的。 三次握手状态的改变&#xff1a; 客户端发起握手。 调用 connect() 函数时状态转化为&#xff1a;SYN_SENT。调用 listen() 函数时状态转换为&#xff1a;LISTEN。ESTABLISHED是被连接的状态。 四次挥手…

Python系列(7)—— 运算符的优先级

一、引言 在Python中&#xff0c;当一个表达式包含多个运算符时&#xff0c;运算符的优先级决定了这些运算符的执行顺序。高优先级的运算符会先于低优先级的运算符进行计算。了解和掌握运算符的优先级对于编写正确的Python代码至关重要。 二、Python中的运算符优先级 Python…

2023-2024年广东省职业院校技能大赛信息安全管理与评估赛项规程

2023-2024 年度广东省职业院校技能大赛“信息安全管理与评估”赛项规程 一、赛项名称 赛项编号&#xff1a;GZ032 赛项名称&#xff1a;信息安全管理与评估 英语翻译&#xff1a;Information Security Management and Evaluation 赛项组别&#xff1a;高职组 竞赛形式&am…

httprunnerV4.X的基本使用详解

目录 1、httprunner概述 1.1、httprunner的优点 2、httprunner的安装 3、基本命令的使用 3.1、生成脚手架 3.2、将har文件转换为测试用例文件 3.3、执行测试用例 3.4、为项目创建虚拟环境&#xff0c;然后安装httprunner库 3.4、执行测试用例生成测试报告 4、httprun…

CSS 双色拼接按钮效果

<template><view class="sss"><button> <!-- 按钮 --><view class="span"> 按钮 </view> <!-- 按钮文本 --></button></view></template><script></script><style>body {b…

【Git】windows系统安装git教程和配置

一、何为Git Git(读音为/gɪt/)是一个开源的分布式版本控制系统&#xff0c;可以有效、高速地处理从很小到非常大的项目版本管理。 二、git安装包 有2种版本&#xff0c;Git for Windows Setup和Git for Windows Portable(便携版)两个版本都可以。 三、Git for Windows Por…

js设计模式实例

js设计模式 设计模式&#xff08;Design pattern&#xff09;代表了最佳的实践&#xff0c;通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误…