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

相关文章

Java Stream流之GroupBy的用法及应用场景

《JavaStream流之GroupBy的用法及应用场景》本教程将详细介绍如何在Java中使用Stream流的groupby方法,包括基本用法和一些常见的实际应用场景,感兴趣的朋友一起看看吧... 目录Java Stream流之GroupBy的用法1. 前言2. 基础概念什么是 GroupBy?Stream

Java Spring的依赖注入理解及@Autowired用法示例详解

《JavaSpring的依赖注入理解及@Autowired用法示例详解》文章介绍了Spring依赖注入(DI)的概念、三种实现方式(构造器、Setter、字段注入),区分了@Autowired(注入... 目录一、什么是依赖注入(DI)?1. 定义2. 举个例子二、依赖注入的几种方式1. 构造器注入(Con

详解MySQL中JSON数据类型用法及与传统JSON字符串对比

《详解MySQL中JSON数据类型用法及与传统JSON字符串对比》MySQL从5.7版本开始引入了JSON数据类型,专门用于存储JSON格式的数据,本文将为大家简单介绍一下MySQL中JSON数据类型... 目录前言基本用法jsON数据类型 vs 传统JSON字符串1. 存储方式2. 查询方式对比3. 索引

全面掌握 SQL 中的 DATEDIFF函数及用法最佳实践

《全面掌握SQL中的DATEDIFF函数及用法最佳实践》本文解析DATEDIFF在不同数据库中的差异,强调其边界计算原理,探讨应用场景及陷阱,推荐根据需求选择TIMESTAMPDIFF或inte... 目录1. 核心概念:DATEDIFF 究竟在计算什么?2. 主流数据库中的 DATEDIFF 实现2.1

MySQL中的LENGTH()函数用法详解与实例分析

《MySQL中的LENGTH()函数用法详解与实例分析》MySQLLENGTH()函数用于计算字符串的字节长度,区别于CHAR_LENGTH()的字符长度,适用于多字节字符集(如UTF-8)的数据验证... 目录1. LENGTH()函数的基本语法2. LENGTH()函数的返回值2.1 示例1:计算字符串

Java中的数组与集合基本用法详解

《Java中的数组与集合基本用法详解》本文介绍了Java数组和集合框架的基础知识,数组部分涵盖了一维、二维及多维数组的声明、初始化、访问与遍历方法,以及Arrays类的常用操作,对Java数组与集合相... 目录一、Java数组基础1.1 数组结构概述1.2 一维数组1.2.1 声明与初始化1.2.2 访问

MySQL 中的 CAST 函数详解及常见用法

《MySQL中的CAST函数详解及常见用法》CAST函数是MySQL中用于数据类型转换的重要函数,它允许你将一个值从一种数据类型转换为另一种数据类型,本文给大家介绍MySQL中的CAST... 目录mysql 中的 CAST 函数详解一、基本语法二、支持的数据类型三、常见用法示例1. 字符串转数字2. 数字

Python中你不知道的gzip高级用法分享

《Python中你不知道的gzip高级用法分享》在当今大数据时代,数据存储和传输成本已成为每个开发者必须考虑的问题,Python内置的gzip模块提供了一种简单高效的解决方案,下面小编就来和大家详细讲... 目录前言:为什么数据压缩如此重要1. gzip 模块基础介绍2. 基本压缩与解压缩操作2.1 压缩文

解读GC日志中的各项指标用法

《解读GC日志中的各项指标用法》:本文主要介绍GC日志中的各项指标用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、基础 GC 日志格式(以 G1 为例)1. Minor GC 日志2. Full GC 日志二、关键指标解析1. GC 类型与触发原因2. 堆

MySQL数据库中ENUM的用法是什么详解

《MySQL数据库中ENUM的用法是什么详解》ENUM是一个字符串对象,用于指定一组预定义的值,并可在创建表时使用,下面:本文主要介绍MySQL数据库中ENUM的用法是什么的相关资料,文中通过代码... 目录mysql 中 ENUM 的用法一、ENUM 的定义与语法二、ENUM 的特点三、ENUM 的用法1