我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Java8Instant时间戳实例讲解

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Java8Instant时间戳实例讲解

说明

Instant 类  是Java8 中补充的一个 时间戳类。
相较于 System.currentTimeMillis()获取到【毫秒】,Instant 可以更为精确的获取到【纳秒】。

Instant 可以使用静态方法 now() 或者 of() 方法来创建一个实例对象。(案例代码中会有体现)

Instant 类的常用API 就是获取时间戳了
 * Instant 类的 getEpochSecond() : 获取的是秒
 * Instant 类的 toEpochMilli() : 获取的是毫秒,同 System.currentTimeMillis()
 * Instant 类的 getNano() : 获取的是纳秒,更精确了

同时,Instant 类还是 Java8 中 提供的新的 日期时间类LocalDateTime 与 原来的 java.util.Date 类之间转换的桥梁。

在java.util.Date类与LocalDate、LocalDateTime类之间转换中 均可以通过Instant作为中间类完成转换,Instant的使用还是比较方便的,下面介绍Instant的使用。

一、创建Instant实例

Instant now = Instant.now();
System.out.println("now:"+now);

控制台输出:

now:2018-07-09T08:59:08.853Z

注意:通过这种方式获取的时间戳与北京时间相差8个时区,需要修正为北京时间,通过查看源代码发现Instant.now()使用等是UTC时间Clock.systemUTC().instant()。LocalDate、LocalDateTime 的now()方法使用的是系统默认时区 不存在Instant.now()的时间问题。
###解决方法
增加8个小时

Instant now = Instant.now().plusMillis(TimeUnit.HOURS.toMillis(8));
System.out.println("now:"+now);

控制台输出:

now:2018-07-09T16:58:48.188Z

二、Instant获取long类型的10位秒数、13位毫秒数

Instant now = Instant.now().plusMillis(TimeUnit.HOURS.toMillis(8));
System.out.println("秒数:"+now.getEpochSecond());
System.out.println("毫秒数:"+now.toEpochMilli());

控制台输出:

秒数:1539170157
毫秒数:1539170157886

LocalDateTime输出毫秒数的方式,比Instant多一步转换

LocalDateTime localDateTime = LocalDateTime.now();
//LocalDateTime转Instant
Instant localDateTime2Instant = localDateTime.atZone(ZoneId.systemDefault()).toInstant();
System.out.println("LocalDateTime 毫秒数:"+localDateTime2Instant.toEpochMilli());

控制台输出:

LocalDateTime 毫秒数:1539141733010

到此这篇关于Java8 Instant 时间戳的文章就介绍到这了,更多相关Java8 Instant 时间戳内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Java8Instant时间戳实例讲解

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Java8Instant时间戳实例讲解

Instant类是Java8中补充的一个时间戳类,nstant可以使用静态方法now()或者of()方法来创建一个实例对象,本文通过实例代码讲解Java8Instant时间戳,感兴趣的朋友跟随小编一起看看吧
2022-11-13

php判断时间戳是否为今天实例讲解

本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑php判断指定时间戳是不是今天的方法实现思想: 使用date()格式化今天的日期,将其转为“年月日”格式 使用date()格式化指定时间戳,将其转为“年月日”格式 使用“
2017-04-19

C# 时间戳转换实例

本文主要介绍了C# 时间戳转换实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
2023-03-19

Golang时间及时间戳的获取转换超全面详细讲解

说实话,golang的时间转化还是很麻烦的,最起码比php麻烦很多,下面这篇文章主要给大家介绍了关于golang时间/时间戳的获取与转换的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
2022-12-16

php时间戳转换实例代码分析

本文小编为大家详细介绍“php时间戳转换实例代码分析”,内容详细,步骤清晰,细节处理妥当,希望这篇“php时间戳转换实例代码分析”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。一、时间戳的概念Unix时间戳,也叫做
2023-07-05

JS时间戳转换方式示例详解

这篇文章主要介绍了JS时间戳转换方式,本文以vue2和vue3两个后台管理系统中的下单时间为例,将原本的时间戳转换为年月日的形式,其中vue2使用js和element ui,vue3使用TS和element-plus,需要的朋友可以参考下
2023-05-20

php时间戳的示例分析

这篇文章主要介绍了php时间戳的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、设置时区(默认时区是UTC)date_default_timezone_set设定用
2023-06-14

PHP如何实现时间戳仅取时间

这篇文章主要介绍“PHP如何实现时间戳仅取时间”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“PHP如何实现时间戳仅取时间”文章能帮助大家解决问题。在 PHP 中,我们可以使用date函数来格式化时间
2023-07-05

javascript实现时间戳转时间的方法

本篇内容介绍了“javascript实现时间戳转时间的方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!javascript实现时间戳转时间
2023-06-14

Golang解析时间戳格式

Golang作为一种高效的编程语言,对时间戳格式的解析提供了强大的支持。无论是Unix时间戳还是其他格式,Golang都可以轻松解析并转换为时间对象。在本文中,我们将为您介绍Golang中解析时间戳格式的方法,并提供一些实用的示例代码。无论
Golang解析时间戳格式
2024-02-10

PHP实现生日转时间戳的示例教程

PHP实现生日转时间戳的示例教程在开发Web应用程序时,有时候需要把生日转换为时间戳格式,便于程序操作和计算。本文将为大家介绍如何使用PHP来实现生日转时间戳的功能。步骤一:准备PHP环境首先,确保你的服务器上已经安装了PHP环境。你
PHP实现生日转时间戳的示例教程
2024-03-04

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录