Java 8中 java.util.Date 类新增了两个方法,分别是from(Instant instant)和toInstant()方法

// Obtains an instance of Date from an Instant object.
public static Date from(Instant instant) {try {return new Date(instant.toEpochMilli());} catch (ArithmeticException ex) {throw new IllegalArgumentException(ex);}
}// Converts this Date object to an Instant.
public Instant toInstant() {return Instant.ofEpochMilli(getTime());
}

这两个方法使我们可以方便的实现将旧的日期类转换为新的日期类,具体思路都是通过Instant当中介,然后通过Instant来创建LocalDateTime(这个类可以很容易获取LocalDate和LocalTime),新的日期类转旧的也是如此,将新的先转成LocalDateTime,然后获取Instant,接着转成Date,具体实现细节如下:

// 01. java.util.Date --> java.time.LocalDateTime
public void UDateToLocalDateTime() {java.util.Date date = new java.util.Date();Instant instant = date.toInstant();ZoneId zone = ZoneId.systemDefault();LocalDateTime localDateTime = LocalDateTime.ofInstant(instant, zone);
}// 02. java.util.Date --> java.time.LocalDate
public void UDateToLocalDate() {java.util.Date date = new java.util.Date();Instant instant = date.toInstant();ZoneId zone = ZoneId.systemDefault();LocalDateTime localDateTime = LocalDateTime.ofInstant(instant, zone);LocalDate localDate = localDateTime.toLocalDate();
}// 03. java.util.Date --> java.time.LocalTime
public void UDateToLocalTime() {java.util.Date date = new java.util.Date();Instant instant = date.toInstant();ZoneId zone = ZoneId.systemDefault();LocalDateTime localDateTime = LocalDateTime.ofInstant(instant, zone);LocalTime localTime = localDateTime.toLocalTime();
}// 04. java.time.LocalDateTime --> java.util.Date
public void LocalDateTimeToUdate() {LocalDateTime localDateTime = LocalDateTime.now();ZoneId zone = ZoneId.systemDefault();Instant instant = localDateTime.atZone(zone).toInstant();java.util.Date date = Date.from(instant);
}// 05. java.time.LocalDate --> java.util.Date
public void LocalDateToUdate() {LocalDate localDate = LocalDate.now();ZoneId zone = ZoneId.systemDefault();Instant instant = localDate.atStartOfDay().atZone(zone).toInstant();java.util.Date date = Date.from(instant);
}// 06. java.time.LocalTime --> java.util.Date
public void LocalTimeToUdate() {LocalTime localTime = LocalTime.now();LocalDate localDate = LocalDate.now();LocalDateTime localDateTime = LocalDateTime.of(localDate, localTime);ZoneId zone = ZoneId.systemDefault();Instant instant = localDateTime.atZone(zone).toInstant();java.util.Date date = Date.from(instant);
}

转载自:https://www.cnblogs.com/exmyth/p/6425878.html

Java 8 中 Date与LocalDateTime、LocalDate、LocalTime互转相关推荐

  1. Java8中 Date和LocalDateTime的相互转换

    转载自  Java8中 Date和LocalDateTime的相互转换 一.在Java 8中将Date转换为LocalDateTime 方法1: 将Date转换为LocalDatetime,我们可以使 ...

  2. java程序中date类型比较大小总结

    前言 工作中遇到时间的比较问题,这里提供几种常用的Date类型数据比较大小方式. compareTo()方法 before()方法 after()方法 getTime()方法 1. compareTo ...

  3. java getday_javascript中Date对象的getDay方法使用指南

    Date对象有个getDay方法,它根据本地时间,返回一个具体日期中一周的第几天.返回值从0~6,分别对应周日~周六 getDay 0 1 2 3 4 5 6 星期几 周日 周一 周二 周三 周四 周 ...

  4. mysql中date转sqlserver_MySQL和SQLServer互转

    MySQL和SQLServer互转 MySQL和SQLServer可以互转,需要odbc! 将Mysql数据库转换为MSsql的数据库,或者将Mssql数据库转换为Mysql的数据库,使用MySql ...

  5. 如何在Java 8中使用LocalDateTime格式化/解析日期-示例教程

    Java项目中的常见任务之一是将日期格式化或解析为String,反之亦然. 解析日期表示您有一个表示日期的字符串,例如" 2017-08-3",并且要将其转换为表示Java中日期的 ...

  6. java localdate_Java 时间类-Calendar、Date、LocalDate/LocalTime

    1.Date 类 java.util.Date是一个"万能接口",它包含日期.时间,还有毫秒数,如果你只想用java.util.Date存储日期,或者只存储时间,那么,只有你知道哪 ...

  7. Java中Double与BigDecimal的互转,Date和LocalDateTime互转

    Java中类型转换是非常常见的,下面说下几种类型的转换. BigDecimal类型和double类型的值相互转换 1.BigDecimal转double,使用BigDecimal类里面doubleVa ...

  8. java中Date计算时间差

    1.java 7中的日历类Calendar Calendar类使用其静态的getInstance()方法获取一个日历实例,该实例为当前的时间:如果想改变时间,可以通过其setTime方法传入一个Dat ...

  9. java中date代替_Java:为什么Date构造函数不推荐,我用什么来代替?

    当Java第一次启动和发展时, java.util.Date , java.util.Calendar和java.text.SimpleDateFormat类被冲得太快了. 这些课程没有很好的devi ...

最新文章

  1. 黑龙江智能车邀请赛中的单车比赛
  2. 数据结构: 排序算法介绍
  3. 安卓实训项目:音乐播放器2.0——实训报告2
  4. 项目怎么部署到服务器上_项目开发学习 云服务器的部署
  5. 中国湿敏元器件市场研发方向预测与前景趋势研究报告2022版
  6. PAT (Basic Level) Practice (中文)1023 组个最小数 (20 分) (排序)
  7. ai如何做倒角和圆角_石材路沿石是如何倒角的?倒角费用是多少?路沿石质量标准?...
  8. 树的存储结构-孩子兄弟表示法
  9. 【CTSC2010】珠宝商【后缀自动机】【点分治】【根号分治】
  10. arduino温湿度计库文件_arduino学习笔记八 温湿度计
  11. 我是如何用百度知道做小众企业站流量推广的?
  12. Pytorch Bug解决:RuntimeError: running_mean should contain 1 elements not 10
  13. 今日财富杂志今日财富杂志社今日财富编辑部2022年第11期目录
  14. java课程设计 成绩_Java课程设计—学生成绩管理系统(201521123005 杨雪莹)
  15. Impala入门操作
  16. python表白女神
  17. 计算机网络设备网关属于固定资产,财政六大类常用固定资产分类及代码
  18. 伊斯坦布尔之旅返程:夜景和免税店
  19. css span文字下划线
  20. 正则表达式 RegExp

热门文章

  1. 深圳内推 | 华为诺亚方舟实验室招聘机器学习/深度学习算法实习生
  2. 对抗训练硬核分析:对抗样本与模型参数的关系
  3. 一文详解神经网络与激活函数的基本原理
  4. 抽取+生成:一种基于背景知识的参考感知网络对话模型
  5. DeepMind论文解读:让机器更深入地理解文本
  6. 【Java后端】三目运算符失效问题刨根问底(及NPE分析)
  7. IDEA发布运行web项目(曾经遇到的项目启动报404)
  8. redis便捷启动,shell启动redis
  9. oracle中序列号的使用
  10. LeetCode 21 合并两个有序链表