LocalDateTime 的常用操作

  • 判断两个 LocalDateTime 是否是同一天
  • 判断一个 LocalDateTime 是否是今天
  • 将 Date 对象转化为 LocalDateTime

  对于日期时间,一直困扰着很多编程语言和开发者。要怪就怪地球公转与自转的规律如此不协调以及人类为什么发明出这么多不相容的历法。对于 Java,很早以前就有了很多描述日期、时间的类了,如 java.util.Datejava.util.Calendar 等。现如今,最好使用 java.time.LocalDateTime。LocalDateTime 是 Java 8 引入的一种日期类。在功能上,它可以分解为 LocalDate、LocalTime 两个类。前者表示年、月、日,后者表示时、分、秒、纳秒。因此,LocalDateTime 可以将时间从年一直精确到纳秒,可以说很强大了!

  本文将给出关于 LocalDateTime 的常用操作。(注意:1 秒 = 109^99 纳秒。)

判断两个 LocalDateTime 是否是同一天

public static boolean isTheSameDay(LocalDateTime first, LocalDateTime second) {var firstDay = first.toLocalDate();var secondDay = second.toLocalDate();return firstDay.equals(secondDay);
}

判断一个 LocalDateTime 是否是今天

  其中,方法 isTheSameDay 是自定义方法,实现已在上面给出。

public static boolean isToday(LocalDateTime dateTime) {return isTheSameDay(LocalDateTime.now(), dateTime);
}

将 Date 对象转化为 LocalDateTime

  由于一个旧 API 的限制,有时候可以直接获得的对象只能是 Date 对象,这个时候就需要将 Date 对象转化为 LocalDateTime。其中,ZoneId 为时区。

public static LocalDateTime date2LocalDateTime(Date date, ZoneId zoneId) {return date.toInstant().atZone(zoneId).toLocalDateTime();
}

  如果只使用中国的时区,可以不提供时区形参。(其中,方法 date2LocalDateTime(Date date, ZoneId zoneId) 是自定义方法,实现已在上面给出。)

public static LocalDateTime date2LocalDateTime(Date date) {return date2LocalDateTime(date, ZoneId.of("Asia/Shanghai"));
}

LocalDateTime 的常用操作相关推荐

  1. 如Java8的LocalDate与Date相互转换、ZonedDateTime等常用操作包含多个使用示例、Java8时区ZoneId的使用方法、Java8时间字符串解析成类

    下面将依次介绍 Date转Java8时间类操作 ,Java8时间类LocalDate常用操作(如获得当前日期,两个日期相差多少天,下个星期的日期,下个月第一天等) 解析不同时间字符串成对应的Java8 ...

  2. TensorFlow常用操作:代码示例

    1,定义矩阵代码示例: import tensorflow as tftf.zeros([3,4]) #定义3行4列元素均为0的矩阵tensor=tf.constant([1,2,3,4])#定义一维 ...

  3. Ubuntu 常用操作

    Ubuntu常用操作 外观操作 修改应用icon图标 终端美化 内存管理 内存查询 分区管理 日志清理 操作执行 自动执行多条命令 外观操作 修改应用icon图标 在/usr/share/applic ...

  4. IOS沙盒Files目录说明和常用操作

    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launc ...

  5. 用Python轻松搞定Excel中的20个常用操作

    来源 |早起Python(ID: zaoqi-python) Excel与Python都是数据分析中常用的工具,本文将使用动态图(Excel)+代码(Python)的方式来演示这两种工具是如何实现数据 ...

  6. python和R对dataframe的常用操作的差异:head、tail、shape、dim、nrow、ncol、descirbe、summary、str

    python和R对dataframe的常用操作的差异:head.tail.shape.dim.nrow.ncol.descirbe.summary.str # python df.head() # R ...

  7. 【node】Sequelize常用操作、基本增删改查

    [node]Sequelize常用操作.基本增删改查 sequelize初始化 先初始化一个数据库实例 再初始化一个model实例 sequelize的数据类型 基本增删改查的写法 SELECT * ...

  8. JavaScript:对Object对象的一些常用操作总结

    JavaScript对Object对象的一些常用操作总结. 一.Object.assign() 1.可以用作对象的复制 var obj = { a: 1 }; var copy = Object.as ...

  9. ubuntu的学习教程(常用操作)

    摘要 最近在学习linux,把自己学习过程中遇到的常用操作以及一些有助于理解的内容记录下来.我主要用的是ubuntu系统 命令提示符 '~' 这个是指用户的家目录,用户分为root用户和普通用户,ro ...

最新文章

  1. 自己写的哈希表以及解决哈希冲突
  2. 闲话WPF之十五(WPF的数据处理 [2])
  3. mac 上压测工具_Mac上的触控板/鼠标增强工具推荐
  4. <读书笔记> Thinking in python (Python 设计模式) 3. Proxy and State模式
  5. 制作GHOST XP 基于自由天空驱动包+SysPacker 2.1
  6. 算法 Tricks(二) —— 大数的处理
  7. system_Class类说明文档
  8. QT音乐播放器(接入网易云API)
  9. Linux使用fdisk工具对SD卡进行MBR分区
  10. 基于字典爆破的子域名脚本
  11. 全球5G设备商最新排名
  12. 2022年12月英语六级预测范文—预测范文:人生哲理、人生
  13. GO语言开山篇(二):诞生小故事
  14. Filecoin官方:8.12矿工线上会议记录 | 中链云
  15. vCenter补丁升级
  16. Linux之学习目标,初识linux操作系统。(其开发者们之无私奉献与分享合作精神,使我辈敬佩之至,在此由衷地向前辈们表达敬意与感谢。)
  17. 还记得《非诚勿扰》葛大爷的“分歧终端机”吗?迅雷链帮他实现了
  18. SQL中use语句打开数据库
  19. Unsupervised Neural Machine Translation with SMT as Posterior Regularization
  20. 空列表,空数组 --append()尾部追加数据

热门文章

  1. 容器资源需求、资源限制(二十二)
  2. Android 开发之 GridView及其事件监听
  3. openssl pem 生成公钥和私钥及文件
  4. 数据仓库专题(6)-数据仓库、主题域、主题概念与定义
  5. HTML5按钮的点击态问题
  6. PsTools在***中的一点小应用
  7. jQuery对select操作(2)
  8. Sybase数据库中找回丢失的sa密码
  9. 视频:参加ZDNet《小崔说事》谈知识管理
  10. Happy Birthday