Java:JSR 310日期时间体系LocalDateTime、OffsetDateTime、ZonedDateTime

news2024/9/28 9:19:54

在这里插入图片描述
JSR 310日期时间体系:

  • LocalDateTime:本地日期时间
  • OffsetDateTime:带偏移量的日期时间
  • ZonedDateTime:带时区的日期时间

目录

    • 构造
    • 计算
    • 格式化
    • 参考文章

日期时间包

import java.time.LocalDateTime;
import java.time.OffsetDateTime;
import java.time.ZonedDateTime;
import java.time.format.DateTimeFormatter;

构造

LocalDateTime

// 获取本地时间
LocalDateTime now = LocalDateTime.now();
System.out.println(now);
// 2023-09-20T15:12:35.899

// 获取当前的纽约时间
LocalDateTime nowNewYork = LocalDateTime.now(ZoneId.of("America/New_York"));
System.out.println(nowNewYork);
// 2023-09-20T03:12:35.902

OffsetDateTime

OffsetDateTime now = OffsetDateTime.now();
System.out.println(now);
// 2023-09-20T15:36:41.490+08:00

ZonedDateTime

ZonedDateTime now = ZonedDateTime.now();
System.out.println(now);
// 2023-09-20T15:36:02.513+08:00[Asia/Shanghai]

计算

// 获取本地时间
LocalDateTime now = LocalDateTime.now();
System.out.println(now);
// 2023-09-20T15:21:06.789

// + 3天
LocalDateTime now3 = now.plusDays(3);
System.out.println(now3);
// 2023-09-23T15:21:06.789

// -4天
LocalDateTime now4 = now.minusDays(4);
System.out.println(now4);
// 2023-09-16T15:21:06.789

// 计算天数
Period between = Period.between(now.toLocalDate(), now3.toLocalDate());
System.out.println(between.getDays());
// 3

// 计算小时数
Duration between1 = Duration.between(now.toLocalTime(), now3.toLocalTime());
System.out.println(between1.toHours());
// 0

格式化

// 获取本地时间
LocalDateTime now = LocalDateTime.now();
System.out.println(now);
// 2023-09-20T15:25:46.454

// 格式化
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
String format = dateTimeFormatter.format(now);
System.out.println(format);
// 2023-09-20 15:25:46

// 解析时间格式的字符串
LocalDateTime parse = LocalDateTime.parse(format, dateTimeFormatter);
System.out.println(parse);
// 2023-09-20T15:27:15

参考文章

  1. LocalDateTime、OffsetDateTime、ZonedDateTime互转,这一篇绝对喂饱你

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

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

相关文章

盲水印接口,版权保护,防止篡改

添加水印,水印生成,获取水印,隐性水印,版权保护,防止篡改,数字媒体分发, 数字取证,水印生成 一、接口介绍 通过上传原始图片和水印图,生成带有隐性水印图的图片。既保持图片的美观…

算法题必备基础技巧(C++版)

最近可能要参加秋招面试........最近还要顺便复习整理一下之前的一些技巧,整理归纳一下。倒不是说放弃考研了,而是尽可能找一个普通的工作保底吧...... 一.函数模板 模板,顾名思义,任何类型都可以套用,分享一个打印任…

【数据分享】2023年全国地级市点位数据(免费获取\shp格式\excel格式)

地级市点位数据是我们各项研究中经常使用到的数据,在之前的文章中我们分享过2022年度的地级市及以上城市的点位数据(可查看之前的文章获悉详情)。本次我们带来的是2023年度的全国范围的地级市及以上城市的点位数据,点位位置为市政…

【Linux 服务器运维】定时任务 crontab 详解 | 文末送书

文章目录 前言一、crontab 介绍1.1 什么是 crontab1.2 crontab 命令工作流程1.3 Linux 定时任务分类 二、crontab 用法详解2.1 crond 服务安装2.2 crontab 文件内容分析2.3 crontab 命令用法2.3.1 查看定时任务列表2.3.2 编辑/创建定时任务2.3.3 删除定时任务2.3.4 其他 cronta…

NI SCXI-1000 编码器模块

NI SCXI-1000 是 NI(National Instruments)生产的编码器模块,通常用于工业自动化和控制系统中,以采集和处理编码器信号,用于测量和监测旋转或线性位置。以下是该模块的一些主要产品特点: 编码器输入&#x…

linux内核分析:进程通讯方式

信号 一旦有信号产生,我们就有下面这几种,用户进程对信号的处理方式。 1.执行默认操作。Linux 对每种信号都规定了默认操作,例如,上面列表中的 Term,就是终止进程的意思。Core 的意思是 Core Dump,也即终止进程后,通过 Core Dump 将当前进程的运行状态保存在文件里面…

day1| 704. 二分查找、27. 移除元素

704. 二分查找 题目链接:https://leetcode.cn/problems/binary-search/ 文档讲解:https://programmercarl.com/0704.%E4%BA%8C%E5%88%86%E6%9F%A5%E6%89%BE.html 视频讲解:https://www.bilibili.com/video/BV1fA4y1o715 1、二分法的前提 这道…

SpringSecurity---内存认证和数据库认证

目录 一、内存认证 二、认证逻辑 三、数据库认证(也就是用户名和密码在数据库中寻找) (1)mapper层 (2)启动类添加扫描注解 (3)编写UserDetailsService实现类 一、内存认证 Co…

GLSL-WebGL着色器语言语法详解

GLSL语法 GLSL它是强类型语言,每一句都必须有分号。它的语法和 typescript 挺像。 GLSL的注释语法和 JS 一样,变量名规则也和 JS 一样,不能使用关键字,保留字,不能以 gl_、webgl_ 或 webgl 开头。运算符基本也和 JS 一…

C++之std::holds_alternative、std::get、std::variant应用实例(二百一十九)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 人生格言: 人生…

AVLoadingIndicatorView - 一个很好的Android加载动画集合

官网 GitHub - HarlonWang/AVLoadingIndicatorView: DEPRECATED 项目简介 AVLoadingIndicatorView is a collection of nice loading animations for Android. You can also find iOS version of this here. Now AVLoadingIndicatorView was updated version to 2.X , If …

git的使用——结合具体问题记录git的使用 代码提交从入门到熟练

前言 git作为开发人员必备的技能,需要熟练掌握,本篇博客记录一些git使用的场景,结合具体问题进行git使用的记录。以gitee的使用为例。 文章目录 前言引出已有项目推送gitee1.gitee中新建项目仓库2.本地项目的初始化提交3.比较好玩的commit图…

【EI会议征稿】2023年工业设计与环境工程国际学术会议

2023 International Conference on Industrial Design and Environmental Engineering 2023年工业设计与环境工程国际学术会议 2023年工业设计与环境工程国际学术会议(IDEE 2023)将于2023年11月24-26日于郑州召开。本次会议主要围绕工业设计与环境工程…

Django(18):中间件原理和使用

目录 概述Django自带中间件Django的中间件执行顺序自定义中间件函数使用类 其它中间件钩子函数process_viewprocess_exceptionprocess_template_response如何使用这3个钩子函数? 全局异常处理小结 概述 中间件(middleware)是一个镶嵌到Django的request(请求)/respo…

Zero-Shot、One-shot、Few-Shot 的简介

本文将介绍以下内容: Zero-Shot Learning 的提出ZSL 的通俗理解GPT 之 Zero-ShotZero-Shot、One-shot、Few-Shot 的通俗理解 一、Zero-Shot Learning 的提出 零样本学习 Zero-Shot Learning,简称 ZSL,是由 Lampert 等人在 2009 年提出的。…

Powerbi-矩阵日期表矩阵列数据表头排序

首先做一个DAX日期表,Powerbi中新建表输入如下代码即可 日期表 VAR YearStart 2023 //起始年度 VAR YearEnd 2024 //结束年度VAR WeekNumberType 2 VAR WeekDayType 2RETURN GENERATE (CALENDAR( DATE( YearStart , 1 , 1 ) , DATE( YearEnd , 12 , 31…

什么是内存碎片?

在嵌入式系统中,内存是十分有限而且是十分珍贵的,用一块内存就少了一块内存,而在分配中随着内存不断被分配和释放,整个系统内存区域会产生越来越多的碎片。 因为在使用过程中,申请了一些内存,其中一些释放…

软件定义世界,工程引领未来——中山大学软件工程学院 软件工程导论大作业

目录 软件工程,理解加深 个人困惑 软件与软件工程的定义 学习思路的启发 软件危机的认识及思考 软件测试的初步认识 科技前沿,守正创新 代码有智能,教育有情怀 深入浅出,引人入胜 再接再厉,未来可期 “软件…

AI数字人虚拟主播,跟传统主播相比有哪些优势,究竟谁更胜一筹?

在今年,AI人工智能技术得到了快速发展,AI数字人开始大面积进入我们的生活,我们经常可以在各大直播间刷到AI数字人虚拟主播。 这些主播光从表面上来看,完全跟真人一模一样,一样的容貌、一样的身形、一样的声音&#xf…

2023年8月体育用品行业数据分析(京东数据产品)

当前,亚运会临近,这也带动了国民对体育消费的热情,体育产品内销逐渐旺盛,“亚运经济”红利开始显现。鲸参谋数据显示,今年8月份,京东平台上体育用品行业的销量为185万,同比增长2%;销…