Java8中的日期时间类
测试类:
- import java.time.*;
- import java.time.format.DateTimeFormatter;
- public class App
- {
- public static void main( String[] args )
- {
- LocalDateTime time = LocalDateTime.now();
- System.out.println(time.toString()); //输出日期时间:2019-05-04T18:27:55.240
- System.out.println(time.toLocalDate()); //输出日期:2019-05-04
- System.out.println(time.toLocalTime()); //输出时间:18:27:55.240
- System.out.println(time.getDayOfMonth()); //输出当前日期月份的第几天:4
- System.out.println(time.getDayOfWeek()); //输出档期日期周几:SATURDAY
- System.out.println(time.getDayOfYear()); //当前日期在该年属于第几天:124
- System.out.println(time.getHour()); //输出:18
- System.out.println(time.getMinute()); //输出:27
- System.out.println(time.getSecond()); //输出:55
- System.out.println(time.getMonthValue()); //输出:5
- System.out.println(time.getMonth()); //输出:MAY
- System.out.println("==============================================");
- //格式化输出:
- DateTimeFormatter format = DateTimeFormatter.ofPattern("YYYY-MM-dd HH:mm:ss");
- System.out.println(time.format(format)); //输出:2019-05-04 18:27:55
- //构造时间
- LocalDateTime startTime = LocalDateTime.of(2019,05,04,17,59);
- System.out.println(startTime.format(format)); //输出:2019-05-04 17:59:00
- LocalDateTime endTime = LocalDateTime.of(LocalDate.now(), LocalTime.of(0,0,0));
- System.out.println(endTime.format(format)); //输出:2019-05-04 00:00:00
- //时间比较
- System.out.println(time.isAfter(startTime)); //输出:true
- System.out.println(time.isBefore(endTime)); //输出:false
- //时间运算
- System.out.println(time.plusDays(-1).format(format)); //输出:2019-05-03 18:27:55
- System.out.println(time.plusDays(1).format(format)); //输出:2019-05-05 18:27:55
- System.out.println(time.plusMonths(-1).format(format)); //输出:2019-04-04 18:27:55
- System.out.println(time.plusMonths(1).format(format)); //输出:2019-06-04 18:27:55
- System.out.println(time.getHour()); //输出:18
- System.out.println(time.withHour(1).format(format)); //输出:2019-05-04 01:27:55
- //获取毫秒数时间戳
- long milliSec = time.atZone(ZoneId.systemDefault()).toInstant().toEpochMilli();
- System.out.println(milliSec); //输出:1556965675240
- //获取秒数时间戳
- long sec = time.atZone(ZoneId.systemDefault()).toInstant().getEpochSecond();
- System.out.println(sec); //输出:1556965675
- //时间戳转换为时间
- LocalDateTime time2 =LocalDateTime.ofInstant(Instant.ofEpochMilli(milliSec),ZoneId.systemDefault());
- System.out.println(time2.format(format)); //输出:2019-05-04 18:27:55
- LocalDateTime time3 = LocalDateTime.ofInstant(Instant.ofEpochSecond(sec),ZoneId.systemDefault());
- System.out.println(time3.format(format)); //输出:2019-05-04 18:27:55
- }
- }
输出结果:
- 2019-05-04T18:27:55.240
- 2019-05-04
- 18:27:55.240
- 4
- SATURDAY
- 124
- 18
- 27
- 55
- 5
- MAY
- ==============================================
- 2019-05-04 18:27:55
- 2019-05-04 17:59:00
- 2019-05-04 00:00:00
- true
- false
- 2019-05-03 18:27:55
- 2019-05-05 18:27:55
- 2019-04-04 18:27:55
- 2019-06-04 18:27:55
- 18
- 2019-05-04 01:27:55
- 1556965675240
- 1556965675
- 2019-05-04 18:27:55
- 2019-05-04 18:27:55
Java8中的日期时间类的更多相关文章
- 都9012了,Java8中的日期时间API你还没有掌握?
一,Java8日期时间API产生的前因后果 1.1 为什么要重新定义一套日期时间API 操作不方便:java中最初的Date不能直接对指定字段进行加减操作也不支持国际化,后来新增了Calendar,但 ...
- 【Java8新特性】关于Java8中的日期时间API,你需要掌握这些!!
写在前面 Java8之前的日期和时间API,存在一些问题,比如:线程安全的问题,跨年的问题等等.这些问题都在Hava8中的日期和时间API中得到了解决,而且Java8中的日期和时间API更加强大.立志 ...
- 对Java8新的日期时间类的学习(二)
示例11 在Java中如何判断某个日期是在另一个日期的前面还是后面 这也是实际项目中常见的一个任务.你怎么判断某个日期是在另一个日期的前面还是后面,或者正好相等呢?在Java 8中,LocalDate ...
- 对Java8新的日期时间类的学习(一)
引用自Java译站http://it.deepinmind.com/java/2015/03/17/20-examples-of-date-and-time-api-from-Java8.html 除 ...
- jdk8环境下sprngboot/springmvc中JSR310新日期/时间类LocalDateTime显示效果带T
如图所示: 日期时间类中带了一个T,以上这种格式LocalDateTime格式化的时候默认日期时间格式:ISO.DATE_TIME(按笔者目前的知识理解是ISO8601规范中的日期时间格式化) 想要把 ...
- Java基础——常用类之日期时间类
如果有机会,请尝试Java8中全新的时间日期API!(参见Java8新特性随笔) 如果还是使用Java7及之前的版本,那么你可以尝试一些工具类(参考使用工具类相关的Hutool-DateUtil) 如 ...
- Android中关于日期时间与时区的使用总结
在开发Android的过程中,出现过几次由于日期时间导致的问题,而且主要是由于时区的原因导致,所以一直想总结一下,形成一个良好的开发规范. 一.Unix时间戳 Unix时间戳(Unix tim ...
- 在mysql数据库中关于日期时间字段的处理
在mysql数据库中关于日期时间字段的处理 在开发中,日期时间字段一般有如下几种设计 假设要获取2013-08-15日到2013-08-16日之间的记录 1. 直接使用日期时间类字段 相关sql语句如 ...
- 日期类时间类,日期时间类,单例模式,装箱与拆箱,数字类随机数,BigDecimal总结
1.日期类,时间类,日期时间类 初步日期使用方法及格式转换方法(旧方法): 格式://Mon Jul 30 11:26:05 CST 2018 年月日时分秒 CST代表北 ...
随机推荐
- css背景雪碧图等
1.背景图 雪碧图技术 要设置背景,是要设置在某个盒子上 <!doctype html> <html lang="en"> <head> < ...
- Apache实验-目录别名
一.作用介绍 在一些情况下,我们的资源文件都在非/var/www/html目录下,例如/var/www/html/sohu.这样的话我们在输入网址的时候就需要在网站根目录下再输入完整的目录.所以我们可 ...
- 2013.4.24 - KDD第六天
今天早上,中秋给我发了一个压缩包,里面有战德臣的课件,昨天我说我SQL没学好,他说给我发战徳臣课件,然后说我SQL不会的话可以看这个,还有两篇文 章<LDA数学八卦>以及<A Not ...
- 51nod 2488 矩形并的面积
在二维平面上,给定两个矩形,满足矩形的每条边分别和坐标轴平行,求这个两个矩形的并的面积.即它们重叠在一起的总的面积. 收起 输入 8个数,分别表示第一个矩形左下角坐标为(A,B),右上角坐标为(C ...
- 为什么将项目托管到Apache,浏览器输入http://127.0.0.1会跳转到http://127.0.0.1//dashboard/?
找到xampp安装的根目录下htdocs文件夹下的index.php文件 <?php if (!empty($_SERVER['HTTPS']) && ('on' == $_SE ...
- (java)selenium webdriver学习--打开新窗口,并判断新窗口是否与目标窗口一致
描述:selenium webdriver学习--打开新窗口,并判断新窗口是否与目标窗口一致,若一致则切换到该窗口并获取标题 跳出if判断,获取父级标题,并关闭 HTML标签不太明显时,可以用路径表示 ...
- nginx配置白名单
配置如下: http模块: http { include mime.types; default_type application/octet-stream; #log_format main '$r ...
- spring源码分析系列 (15) 设计模式解析
spring是目前使用最为广泛的Java框架之一.虽然spring最为核心是IOC和AOP,其中代码实现中很多设计模式得以应用,代码看起来简洁流畅,在日常的软件设计中很值得借鉴.以下是对一些设计模式的 ...
- TortoiseGit-下载安装汉语语言包(汉化-方法)
TortoiseGit是一款版本控制软件,和git bash是差不多的, 但是TortoiseGit是图形界面,git bash却是命令界面,但是, 我更新了TortoiseGit后,记得明明选择了汉 ...
- LightOJ - 1410 - Consistent Verdicts(规律)
链接: https://vjudge.net/problem/LightOJ-1410 题意: In a 2D plane N persons are standing and each of the ...