java.time包常用类API学习记录
Java8出来已那么多年了,java.time包之前一直没有使用过,最近正好有用到,在此做个记录。

上图列出了java.time包下的类,接下来我们详细看下其中每个类的用法。
Clock:获取到当前时间点,包含时区信息,该类是抽象类,其实现类由其内部类实现,也可以自定义其实现类。

Clock方法描述:
- getZone():获取创建日期时间的时区;
- withZone(ZoneId zone):返回一个指定时区clock副本;
- instant():返回instant实例;
- millis():获取当前instant实例toEpochMilli()返回毫秒;
import java.time.Clock;
import java.time.Instant;
import java.time.ZoneId; public class ClockDemo { public static void main(String[] args) {
systemClock();
} public static void systemClock() {
ZoneId zoneIdParam = ZoneId.of("Asia/Tokyo");
// 获取UTC时区clock实例
Clock clock = Clock.systemUTC();
System.out.println("************UTC************");
descriptionClock(clock, zoneIdParam); // 获取默认时区
System.out.println("************default zone************");
clock = Clock.systemDefaultZone();
descriptionClock(clock, zoneIdParam); // 指定时区
ZoneId zoneId = ZoneId.of("Asia/Yerevan");
System.out.println("************specific zone************");
clock = Clock.system(zoneId);
descriptionClock(clock, zoneIdParam);
} public static void descriptionClock(Clock clock, ZoneId zoneIdParam) {
System.out.println("************begin************");
displayInfo(clock); clock = clock.withZone(zoneIdParam);
System.out.println("************change zone*************");
displayInfo(clock);
System.out.println("************end**************");
} private static void displayInfo(Clock clock) {
ZoneId zoneId = clock.getZone();
System.out.println("当前时区:" + zoneId.getId());
Instant instant = clock.instant();
System.out.println("当前时间(ISO-8601):" + instant);
long currentTime = clock.millis();
System.out.println("当前时间毫秒:" + currentTime);
}
}
************UTC************
************begin************
当前时区:Z
当前时间(ISO-8601):2019-09-28T08:58:42.802Z
当前时间毫秒:1569661122869
************change zone*************
当前时区:Asia/Tokyo
当前时间(ISO-8601):2019-09-28T08:58:42.869Z
当前时间毫秒:1569661122869
************end**************
************default zone************
************begin************
当前时区:Asia/Shanghai
当前时间(ISO-8601):2019-09-28T08:58:42.873Z
当前时间毫秒:1569661122873
************change zone*************
当前时区:Asia/Tokyo
当前时间(ISO-8601):2019-09-28T08:58:42.873Z
当前时间毫秒:1569661122873
************end**************
************specific zone************
************begin************
当前时区:Asia/Yerevan
当前时间(ISO-8601):2019-09-28T08:58:42.874Z
当前时间毫秒:1569661122874
************change zone*************
当前时区:Asia/Tokyo
当前时间(ISO-8601):2019-09-28T08:58:42.874Z
当前时间毫秒:1569661122874
************end**************
未完待续
java.time包常用类API学习记录的更多相关文章
- 《java从入门到精通》学习记录
目录 <Java从入门到精通>学习记录 3 基础的基础部分: 3 一. 常量与变量 3 1. 掌握: 3 (1) .常量与变量的声明方式: 3 (2) .变量的命名规则: 3 (3) .变 ...
- java io包File类
1.java io包File类, Java.io.File(File用于管理文件或目录: 所属套件:java.io)1)File对象,你只需在代码层次创建File对象,而不必关心计算机上真正是否存在对 ...
- java中的常用类(二)
java中的常用类(二) Math类 Math类的声明:public final class Math extends Object Math类是与数学计算有关的类,里面的方法都是静态方法,直接使用类 ...
- java swing中Timer类的学习
最近在完成学校课程的java平时作业,要实现一个计时器,包含开始.暂停以及重置三个功能.由于老师规定要用这个timer类,也就去学习了一下,顺便记录一下. 首先呢去查了一下java手册上的东西,发现t ...
- 【Java基础】常用类
常用类 字符串相关的类 String类:代表字符串,使用一对 "" 引起来表示. public final class String implements java.io.Seri ...
- JAVA异常处理、常用类、反射、集合
异常 异常:在Java中是指被一个方法抛出的对象. 分类:检查异常.运行时异常.错误 运行时异常(uncheckd):RuntimeException和其子类 检查异常(checkd/搜检异常):指E ...
- java 中的常用类
Java 中的包装类 相信各位小伙伴们对基本数据类型都非常熟悉,例如 int.float.double.boolean.char 等. 基本数据类型是不具备对象的特性的,比如基本类型不能调用方法.功能 ...
- 【Android 应用开发】Android 网络编程 API笔记 - java.net 包相关 接口 api
Android 网络编程相关的包 : 9 包, 20 接口, 103 类, 6 枚举, 14异常; -- Java包 : java.net 包 (6接口, 34类, 2枚举, 12异常); -- An ...
- 20175211 2017-2018-2 《Java程序设计》第六周学习记录(2)
目录 1.File类 2.FilenameFilter接口 3.输入输出流 4.使用Scanner解析文件 参考资料 <Java 2实用教程>第10章 输入.输出流 1.File类 常用方 ...
随机推荐
- 面试题Redis最常被问到知识点总结
1.什么是redis? redis是一个高性能的key-value数据库,它是完全开源免费的,而且redis是一个NOSQL类型数据库,是为了解决高并发.高扩展,大数据存储等一系列的问题而产生的数据库 ...
- 在qt的QOpenGLWidget开启opengl的抗锯齿
在QOpenGLWidget的构造函数添加下面几句代码即可 QSurfaceFormat surfaceFormat; surfaceFormat.setSamples();//多重采样 setFor ...
- 7、菜单栏、工具栏、状态栏、浮动窗口、TextEdit
新建项目,基类选择QMainWindow,不勾选ui mainwindow.cpp代码: #include "mainwindow.h" #include <QMenu ...
- HDU 6438 Buy and Resell ( 2018 CCPC 网络赛 && 贪心 )
题目链接 题意 : 给出一些数.你可以从左到右对这些数进行三种操作花费 Ai 买入东西.以 Ai 价格卖出你当前有的东西.或者什么都不做.现在问你可以获取的最大利益是多少? 分析 : 和 CF 867 ...
- POJ 3723 征兵问题(最小生成树算法的应用)
Conscription Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 15923 Accepted: 5510 Des ...
- 一致性Hash 分析和实现
一致性Hash 分析和实现 ---title: 1.一致性Hashdate: 2018-02-05 12:03:22categories:- 一致性Hash--- 一下分析来源于网络总结:算法参照自己 ...
- Kotlin的高阶函数和常用高阶函数
Kotlin的高阶函数和常用高阶函数 文章来源:企鹅号 - Android先生 高阶函数的定义 将函数当做参数或者是返回值的函数 什么是高阶函数 可以看看我们常用的 函数: 首先我们可以知道, 是 的 ...
- 后盾网lavarel视频项目---vue-axios基本用法
后盾网lavarel视频项目---vue-axios基本用法 一.总结 一句话总结: 都是npm安装,然后import引入vue,然后按手册使用就好了,很简单 二.vue-axios基本用法 转自或参 ...
- Python学习笔记:list的各种操作
向一个列表中添加单个元素: my_list = []my_list.append('我爱你') 移除列表中的某个元素: my_list.pop(0) # 0是需要移除元素在列表中的index 或者是移 ...
- express 模板 及 文件上传
express 的三大功能: 1. 提供了静态服务(所谓的根目录) let express = require("express"); let app = express(); a ...