LocalDateTime 和 LocalDate 与 date 有什么区别;LocalDateTime 示例,LocalDate 示例

news2024/11/16 17:13:04

目录

  • 1 LocalDateTime 和 LocalDate 与 date 有什么区别
  • 2 LocalDateTime 示例:
  • 2 LocalDate 示例:

1 LocalDateTime 和 LocalDate 与 date 有什么区别

LocalDateTimeLocalDateDateJava中不同的类库中用于表示日期和时间的类,
它们在功能和使用上有一些区别。

LocalDateTimeJava 8中引入的java.time包中的一个类。
它表示不带时区信息的日期和时间。LocalDateTime包含日期
和时间组成部分,如年、月、日、小时、分钟和秒。
LocalDateTime是不可变的,提供了各种方法来操作
和提取日期和时间值。它适用于需要同时处理日期和
时间信息的场景。

LocalDate也是java.time包中的一个类,
它表示不带时区信息的日期。与LocalDateTime不同,
LocalDate只包含日期部分,没有时间部分。
它提供了方法来操作和提取日期值,但不包括时间信息。

DateJava早期版本中的一个类,它位于java.util包中。
它表示特定的日期和时间,包括年、月、日、小时、分钟和秒。
然而,Date类在设计上存在一些问题,它不是线程安全的,
也没有提供良好的日期和时间操作方法。
Java 8引入的java.time包中的LocalDateTimeLocalDate类更推荐在新的代码中使用。

总的来说,LocalDateTime适用于同时处理日期和时间的场景,
LocalDate适用于只需要操作日期的场景,
而DateJava早期版本的类,不推荐在新的代码中使用。

Date类不是线程安全的,LocalDateTime 和 LocalDate是,所以以后使用LocalDateTime 和 LocalDate

2 LocalDateTime 示例:

获取当前时间的   年月日时分秒
LocalDateTime now = LocalDateTime.now();
System.out.println(now);

在这里插入图片描述
创建指定日期和时间的LocalDateTime对象:

LocalDateTime dateTime = LocalDateTime.of(2021, Month.JANUARY, 1, 10, 30);
System.out.println(dateTime);

在这里插入图片描述
获取LocalDateTime对象的日期部分和时间部分:

public static void main(String[] args) {
        LocalDateTime dateTime = LocalDateTime.of(2021, Month.JANUARY, 1, 10, 30,44);
        System.out.println(dateTime);

        LocalDate date = dateTime.toLocalDate();
        LocalTime time = dateTime.toLocalTime();
        System.out.println("Date: " + date);
        System.out.println("Time: " + time);



    }

在这里插入图片描述
添加时间量到LocalDateTime对象:

LocalDateTime newDateTime = dateTime.plusDays(1).plusHours(2);
System.out.println(newDateTime);

在这里插入图片描述
比较两个LocalDateTime对象的先后顺序:

LocalDateTime dateTime1 = LocalDateTime.of(2021, Month.JANUARY, 1, 10, 30);
LocalDateTime dateTime2 = LocalDateTime.of(2021, Month.JANUARY, 2, 8, 0);
boolean isBefore = dateTime1.isBefore(dateTime2);
System.out.println(isBefore);

2 LocalDate 示例:

创建当前日期的LocalDate对象:

LocalDate today = LocalDate.now();
System.out.println(today);

在这里插入图片描述
创建指定日期的LocalDate对象:

LocalDate date = LocalDate.of(2021, Month.JANUARY, 1);
System.out.println(date);

获取LocalDate对象的年、月、日:

int year = date.getYear();
Month month = date.getMonth();
int day = date.getDayOfMonth();
System.out.println("Year: " + year);
System.out.println("Month: " + month);
System.out.println("Day: " + day);

添加日期量到LocalDate对象:

LocalDate newDate = date.plusWeeks(2).plusDays(1);
System.out.println(newDate);

比较两个LocalDate对象的先后顺序:

LocalDate date1 = LocalDate.of(2021, Month.JANUARY, 1);
LocalDate date2 = LocalDate.of(2021, Month.JANUARY, 2);
boolean isBefore = date1.isBefore(date2);
System.out.println(isBefore);

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

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

相关文章

「Java核心技术大会 2023」6月重磅启动,邀你共同探讨Java生态

前言 📕作者简介:热爱跑步的恒川,致力于C/C、Java、Python等多编程语言,热爱跑步,喜爱音乐的一位博主。 📗本文收录于恒川的日常汇报系列,大家有兴趣的可以看一看 📘相关专栏C语言初…

《机器学习公式推导与代码实现》chapter13-LightGBM

《机器学习公式推导与代码实现》学习笔记,记录一下自己的学习过程,详细的内容请大家购买作者的书籍查阅。 LightGBM 就GBDT系列算法的性能而言,XGBoost已经非常高效了,但并非没有缺陷。LightGBM就是一种针对XGBoost缺陷的改进版…

【C++11】 列表初始化 auto 范围for 新增关键字 新增容器

文章目录 1 列表初始化2 auto && 范围for3 新增关键字3.1 decltype3.2 default3.3 delete3.4 final与override 4 总结 1 列表初始化 由c语言的规则我们知道:一般只有数组才会支持用{}初始化,但是C11新语法规定我们不仅可以用{}初始化各种对象(内…

企业微信 创建应用后如何构造网页授权 获取token 获取用户信息

第一次对接企业微信,上网找了各种方案。 目的是在企业微信中,公司发给员工一个地址,员工点开后打开画面,在这个画面上可以获取到这个员工的userid(后续功能操作就是各自不同的功能了哈,就不详细说了&#…

STM32F4_触摸屏

目录 1. 触摸屏原理 2. 电阻式触摸屏检测原理 3. 电容式触摸屏检测原理 4. 硬件配置 4.1 XPT2046驱动芯片 4.2 硬件设计 5. 代码详解 5.1 main.c 5.2 AT24C02.c 5.3 AT24C02.h 5.4 C_Touch_I2C.c 5.5 C_Touch_I2C.h 5.6 Touch.c 5.7 Touch.h 5.8 FT5206.c 5.9 …

ADAudit Plus:保护企业内部IT安全的强大解决方案

随着企业数字化的推进,IT系统和数据安全变得比以往任何时候都更加重要。为了保护企业的机密信息和敏感数据,企业需要一种可靠的IT安全解决方案。在众多选项中,ADAudit Plus是一款备受赞誉的软件,为企业内部的IT安全提供了强大的支…

Python入门自学进阶-Web框架——36、Web微信类实现初步

打开页面,会出现一个二维码,要使用手机微信扫一扫,才能登录。它的实现原理是什么? 下图为打开网页版微信登录的调试工具网络信息,定时发送请求,状态待处理(pending) 上图的挂起是pe…

网络安全|渗透测试入门案例分析,从零基础入门到精通—登录框页面的快速渗透常用检测手段

目录 引言 1、弱口令 2、万能密码绕过 ​编辑 3、登录认证绕过 3.1.令牌刷新端的错误配置 3.2. 错误的sso配置 3.3.CMS个例的访问问题 3.4.JWT Token的错误解析 3.5.暴力修改Authentication 4、图形验证码不失效 5、短信验证码不失效 6、短信攻击 7、反射型跨站脚…

【MySQL数据库】MySQL 高级SQL 语句二

MySQL 高级 SQL 语句二 一、连接查询1.1 inner join(内连接)1.2 left join (左连接)1.3 right join(右连接) 二、CREATE VIEW ---- 视图三、 UNION - - 连集3.1 UNION3.2 UNION ALL 四、交集值(取两个SQL语句结果的交集…

经典:商业智能BI解读,值得收藏

关注新闻的朋友们可能注意到了,最近这段时间关于数据要素、数字经济、数字化转型的相关行动越来越多,一方面是各级政府的政策规划以及大规模的发展行动,另一方面是则是各行各业的企业开始探寻数字经济,通过数字化转型进行改革&…

angular学习笔记

目录 1、认识Angular![在这里插入图片描述](https://img-blog.csdnimg.cn/17fe3ec067b64d75bf9d24a4e71403ed.png)2、路由2.1、路由懒加载2.2、路由守卫 3、模版指令4、生命周期4.1、父子生命周期 5、依赖注入6、RXJS7、自定义事件,自定义指令8、自定义管道9、获取d…

内网渗透(八十八)之委派攻击

委派 委派是大型网络中经常部署的应用模式,给多跳认证带来了很大的便利与此同时也带来了很大的安全隐患。利用委派,攻击者可结合其他漏洞进行组合攻击,导致攻击者可获取本地管理员权限甚至域管理员权限,还可以制作深度隐藏的后门。 委派是指将域内用户的权限委派给服务账…

【Adversarial Attack in Object Detection】物理对抗攻击和防御

目录 安全监控 **有无意义**无意义的补丁有意义的补丁 光学对抗攻击对抗灯干扰相机成像 攻击方法White-box attacksGradient-based attacks Optimization-based attacks Black-box attacksQuery-based attacksEvolution algorithm OUTLOOK 在计算机视觉中,根据实现…

征服Go世界,御剑江湖!学习路线与顶级资源一网打尽

引言 Go语言(也称为Golang)是一种开源的编程语言,由Google开发。它具有简洁的语法、高效的并发性能和良好的内存管理,因此在近年来迅速获得了广泛的关注和采用。本文将为您提供一条学习Go语言的路线图,并介绍一些优质…

二分查找 - 数据结构和算法教程

二分查找被定义为在排序数组中使用的一种搜索算法,它通过重复将搜索间隔分成两半来实现。二分查找的思想是利用数组被排序的信息,将时间复杂度降低到O(log N)。 在数据结构中应用二分查找的条件 数据结构必须排序。访问数据结构的…

mac为什么读取不了NTFS格式硬盘,Tuxera NTFS for Mac 2022 读写ntfs移动硬盘插件

使用 Mac 的巨大痛点之一:移动硬盘只能打开文件,但是无法写入新的资料。有人说格式化硬盘,改成苹果的 macOS扩展格式,但是原先硬盘的数据要转移,而且拿到 Windows 系统里无法被识别。 有人说格式化硬盘,改…

关于nginx,正向代理和反向代理是什么意思

为什么要使用nginx 很多公司会用到nginx做代理服务器,为什么用nginx,tomcat服务器不行吗? tomcat缺点:并发量小,用户使用的少 nginx:高并发,高性能,cpu、内存等资源消耗却非常低&…

在 Navicat Premium 中管理 MySQL 用户 | 第 4 部分:权限管理员工具

第 4 部分:权限管理员工具 在本系列中,我们一直在探索如何使用 Navicat 的旗舰产品 Navicat Premium 执行常见的用户管理任务。在上一篇文章中,我们研究了新用户对象选项卡的“服务器权限”、“权限”和“SQL预览”选项卡。 在上一篇文章中…

前程无忧guid、acw_sc__v2

文章目录 声明目标网站acw_sc__v2分析python调用测试话外拓展-风控浅析往期逆向文章推荐 声明 本文章中所有内容仅供学习交流,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关,若有侵权,请私信我立即删除&#x…

【测试】Selenium操作Cookie

1.操作Cookie 操作Cookie无非就是读取和删除Cookie,下面这些是主要方法 from selenium.webdriver import Chrome, ChromeOptions from selenium.webdriver.chrome.service import Serviceoptions ChromeOptions() options.add_argument("--ignore-certifica…