LocalDateTime用法大全

2024-06-23 12:48
文章标签 用法 大全 localdatetime

本文主要是介绍LocalDateTime用法大全,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

常规使用

LocalDateTime now = LocalDateTime.now();   // 2020-01-29T14:35:51.207
int year = now.getYear();                  // 2020
Month month = now.getMonth();              // JANUARY
int monthValue = now.getMonthValue();      // 1
int dayOfYear = now.getDayOfYear();        // 29
int dayOfMonth = now.getDayOfMonth();      // 29
DayOfWeek dayOfWeek = now.getDayOfWeek();  // WEDNESDAY
int dayOfWeekValue = dayOfWeek.getValue(); // 3
int hour = now.getHour();                  // 14
int minute = now.getMinute();              // 35
int second = now.getSecond();              // 51long seconds = Instant.now().getEpochSecond();    // 秒时间戳(10位)
long milliSeconds = Instant.now().toEpochMilli(); // 毫秒时间戳(13位)LocalDateTime dateTimeFromSecond = LocalDateTime.ofInstant(Instant.ofEpochSecond(seconds), ZoneOffset.ofHours(8)
);  // 秒转datetimeLocalDateTime dateTimeFromMilliSecond = LocalDateTime.ofInstant(Instant.ofEpochMilli(milliSeconds), ZoneOffset.ofHours(8)
); // 毫秒转datetime

各种转换

String format = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")
);  // datetime转字符串LocalDateTime dateTime = LocalDateTime.parse(format,DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")
);  // 字符串转datetimeDate date = Date.from(dateTime.toInstant(ZoneOffset.ofHours(8)));                             // datetime转date
LocalDateTime fromDate = date.toInstant().atOffset(ZoneOffset.ofHours(8)).toLocalDateTime();  // date转datetime

自定义日期 / 日期加减

LocalDateTime dateTime = LocalDateTime.of(2020, 1, 29, 14, 35, 51); // 2020-01-29T14:35:51LocalDateTime localDateTime1 = dateTime.minusSeconds(1);            // 2020-01-29T14:35:50
LocalDateTime localDateTime2 = dateTime.minusMinutes(1);            // 2020-01-29T14:34:51
LocalDateTime localDateTime3 = dateTime.minusHours(1);              // 2020-01-29T13:35:51
LocalDateTime localDateTime4 = dateTime.minusDays(1);               // 2020-01-28T14:35:51
LocalDateTime localDateTime5 = dateTime.minusWeeks(1);              // 2020-01-22T14:35:51
LocalDateTime localDateTime6 = dateTime.minusMonths(1);             // 2019-12-29T14:35:51
LocalDateTime localDateTime7 = dateTime.minusYears(1);              // 2019-01-29T14:35:51

增加的为对应的plus函数,如dateTime.plusSeconds(1)

比较日期

LocalDateTime now = LocalDateTime.now();     // 2020-01-29T14:35:51.207
LocalDateTime yesterday = now.minusDays(1);  // 2020-01-28T14:35:51.207
boolean after = now.isAfter(yesterday);      // true
boolean before = now.isBefore(yesterday);    // false
boolean equal = now.isEqual(yesterday);      // false

其他类

LocalDate日期

LocalDate dateNow = LocalDate.now();        // 2020-01-29
LocalDate date = LocalDate.of(2020, 1, 29); // 2020-01-29

LocalTime时间

LocalTime timeNow = LocalTime.now();       // 14:35:51.207
LocalTime time = LocalTime.of(23, 59, 59); // 23:59:59

LocalDateTime日期时间

LocalDateTime dateTimeNow = LocalDateTime.now();                    // 2020-01-29T14:35:51.207
LocalDateTime dateTime = LocalDateTime.of(2020, 1, 29, 23, 59, 59); // 2020-01-29T23:59:59

Instant时刻

long second = Instant.now().getEpochSecond();          // 1580279751
long milliSecond = Instant.now().toEpochMilli();       // 1580279751000
Instant instant1 = Instant.ofEpochSecond(second);     // 2020-01-29T14:35:51Z
Instant instant2 = Instant.ofEpochMilli(milliSecond); // 2020-01-29T14:35:51.207Z

Duration时间差

Duration duration = Duration.between(LocalDateTime.now(), LocalDateTime.now().plusDays(1)
);  // PT24H
long seconds = duration.getSeconds();             // 86400
long seconds2 = duration.get(ChronoUnit.SECONDS); // 86400Duration ofDays = Duration.ofDays(1);             // PT24H
Duration ofHours = Duration.ofHours(1);           // PT1H
Duration ofMinutes = Duration.ofMinutes(1);       // PT1M
Duration ofSeconds = Duration.ofSeconds(1);       // PT1S

Period时间段

Period between = Period.between(LocalDate.of(2020, 1, 22), LocalDate.of(2020, 2, 9)
); // P18D
int year = between.getYears();   // 0
int month = between.getMonths(); // 0
int day = between.getDays();     // 18Period period = Period.of(1, 2, 3); // P1Y2M3D
long years = period.get(ChronoUnit.YEARS);            // 1
long months = period.get(ChronoUnit.MONTHS);          // 2
long days = period.get(ChronoUnit.DAYS);              // 3

Clock时钟

Clock clock1 = Clock.system(ZoneOffset.ofHours(8));  // SystemClock[+08:00]
Clock clock2 = Clock.systemUTC();                    // SystemClock[Z]long millis1 = clock1.millis();      // 1582285924008
long millis2 = clock2.millis();      // 1582285924008
Instant instant1 = clock1.instant(); // 2020-02-21T11:54:58.427Z
Instant instant2 = clock2.instant(); // 2020-02-21T11:54:58.428Z

天猫超市优惠地址

这篇关于LocalDateTime用法大全的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


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

相关文章

javascript fetch 用法讲解

《javascriptfetch用法讲解》fetch是一个现代化的JavaScriptAPI,用于发送网络请求并获取资源,它是浏览器提供的全局方法,可以替代传统的XMLHttpRequest,这篇... 目录1. 基本语法1.1 语法1.2 示例:简单 GET 请求2. Response 对象3. 配置请求

Go 语言中的 Struct Tag 的用法详解

《Go语言中的StructTag的用法详解》在Go语言中,结构体字段标签(StructTag)是一种用于给字段添加元信息(metadata)的机制,常用于序列化(如JSON、XML)、ORM映... 目录一、结构体标签的基本语法二、json:"token"的具体含义三、常见的标签格式变体四、使用示例五、使用

mysql中的group by高级用法详解

《mysql中的groupby高级用法详解》MySQL中的GROUPBY是数据聚合分析的核心功能,主要用于将结果集按指定列分组,并结合聚合函数进行统计计算,本文给大家介绍mysql中的groupby... 目录一、基本语法与核心功能二、基础用法示例1. 单列分组统计2. 多列组合分组3. 与WHERE结合使

MySQL 字符串截取函数及用法详解

《MySQL字符串截取函数及用法详解》在MySQL中,字符串截取是常见的操作,主要用于从字符串中提取特定部分,MySQL提供了多种函数来实现这一功能,包括LEFT()、RIGHT()、SUBST... 目录mysql 字符串截取函数详解RIGHT(str, length):从右侧截取指定长度的字符SUBST

SQL Server中的PIVOT与UNPIVOT用法具体示例详解

《SQLServer中的PIVOT与UNPIVOT用法具体示例详解》这篇文章主要给大家介绍了关于SQLServer中的PIVOT与UNPIVOT用法的具体示例,SQLServer中PIVOT和U... 目录引言一、PIVOT:将行转换为列核心作用语法结构实战示例二、UNPIVOT:将列编程转换为行核心作用语

Java中 instanceof 的用法详细介绍

《Java中instanceof的用法详细介绍》在Java中,instanceof是一个二元运算符(类型比较操作符),用于检查一个对象是否是某个特定类、接口的实例,或者是否是其子类的实例,这篇文章... 目录引言基本语法基本作用1. 检查对象是否是指定类的实例2. 检查对象是否是子类的实例3. 检查对象是否

Java中的内部类和常用类用法解读

《Java中的内部类和常用类用法解读》:本文主要介绍Java中的内部类和常用类用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录内部类和常用类内部类成员内部类静态内部类局部内部类匿名内部类常用类Object类包装类String类StringBuffer和Stri

Python 异步编程 asyncio简介及基本用法

《Python异步编程asyncio简介及基本用法》asyncio是Python的一个库,用于编写并发代码,使用协程、任务和Futures来处理I/O密集型和高延迟操作,本文给大家介绍Python... 目录1、asyncio是什么IO密集型任务特征2、怎么用1、基本用法2、关键字 async1、async

Git可视化管理工具(SourceTree)使用操作大全经典

《Git可视化管理工具(SourceTree)使用操作大全经典》本文详细介绍了SourceTree作为Git可视化管理工具的常用操作,包括连接远程仓库、添加SSH密钥、克隆仓库、设置默认项目目录、代码... 目录前言:连接Gitee or github,获取代码:在SourceTree中添加SSH密钥:Cl

SpringBoot3.4配置校验新特性的用法详解

《SpringBoot3.4配置校验新特性的用法详解》SpringBoot3.4对配置校验支持进行了全面升级,这篇文章为大家详细介绍了一下它们的具体使用,文中的示例代码讲解详细,感兴趣的小伙伴可以参考... 目录基本用法示例定义配置类配置 application.yml注入使用嵌套对象与集合元素深度校验开发