java8引入了一套全新的时间日期API

新的时间及日期API位于java.time中java.time包中的是类是不可变且线程安全的。

下面是一些关键类

LocalDateTime       //2018-05-12 08:30:30

LocalDate              //2018-5-12

LocalTime              //08:30:30:622

Instans                   //时间戳 2018-05-12T14:20:13.592Z

获取当前日期

LocalDate   now = LocalDate.now();

获取年: now.getYear();

获取月: now.getMonthValue();

获取天: now.getDayofMonth();

获取前一天:now.minusDays(1);

获取前一周:now.minusWeeks(1);

获取前一月:now.minusMonths(1);

获取前一年:now.minusYears(1);

获取后一天:now.plusDays(1);

获取后一周:now.plusWeeks(1);

获取后一月:now.plusMonths(1);

获取后一年:now.plusYears(1);

获取当前时间

LocalDateTime nowTime = LocalDate.now();

获取前一小时:nowTime.minusHours(1);

获取前一分钟:nowTime.minusMinutes(1);

获取前30秒:nowTime.minusSeconds(30);

获取后一小时:now.plusHours(1);

获取后一分钟:now.plusMinutes(1);

获取后30秒:now.plusSeconds(30);

nowTime也可以获取前一天,前一月。。。后一天,后一月。。。

时间格式转换

DateTimeFormatter format = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");

String nowTimeString = nowTime.format(format);

LocalDateTime nowTimechange = LocalDateTime.parse(nowTimeString,format);

时间比较大小

LocalDateTime time1 = LocalDateTime.of(, , 12, , 3,);
or
time1 = LocalDateTime.parse("2018-05-12 08:30:30",format);
LocalDateTime time2 = LocalDateTime.of(, , 2, , , 3);
or
time2 = LocalDateTime.parse("2018-04-20 16:30:30",format);
time1.isAfter(time2)       true
time1.isEqual(time2) false
time1.isBefore(time2) false

java8时间类的更多相关文章

  1. java8时间类API安全问题(赠送新的时间工具类哟)

    LocalDateTime等新出的日期类全是final修饰的类,不能被继承,且对应的日期变量都是final修饰的,也就是不可变类.赋值一次后就不可变,不存在多线程数据问题. simpleDateFor ...

  2. spring boot添加 LocalDateTime 等 java8 时间类序列化和反序列化的支持

    由于项目将原有的  Date类型的字段改造为 LocalDate,LocalDateTime,LocalTime 类型, 发现  spring  对项目的时间格式无法自动转换,故需手动配置下. 在sp ...

  3. java8时间类的一些封装

    1.判断平年和闰年 (prolepticYear & 3) == 0 这个条件使用了位运算,与上3在二进制计算下即为:& 00…011.目的是保留最后2位二进制数,然后判断是否最后两位 ...

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

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

  5. Java8 时间日期类操作

    Java8 时间日期类操作 Java8的时间类有两个重要的特性 线程安全 不可变类,返回的都是新的对象 显然,该特性解决了原来java.util.Date类与SimpleDateFormat线程不安全 ...

  6. Java8与传统的日期和时间类详解

    一.传统的日期时间类(Date和Calendar) 1. Date类 这里的Date是位于java.util包下的类,而不是java.sql包下的date类,Date对象即包含日期也包含时间,从JDK ...

  7. java8时间工具类Localdate、LocaldateTime

    优点: 1.方便. Date 只能是日期加时间的格式,而 LocalDate .LocalTime.LocalDateTime 分别代表日期,时间,日期+时间,非常灵活.再就是后者在日期计算及格式化方 ...

  8. Java8 日期和时间类

    新的日期和时间API 新的日期和时间类解决了Date和Calendar类出现的问题 浅尝 LocalDate 日期类 LocalDate of = LocalDate.of(2018, 7, 13); ...

  9. Java8 时间 API

    前言 Java8 中最为人津津乐道的新改变恐怕当属函数式 API 的加入.但实际上,Java8 所加入的新功能远不止这个. 本文将基于<Java SE8 for the Really Impat ...

随机推荐

  1. NATAPP打穿内网

    前一篇博文写了ngrok作为内网穿透工具现在开始开始学习另外一种内 网穿透natapp(他也是基于ngrok的一种高速内网穿透服务)多的介绍就 不说了,开始进入正题. 第一步:先登录natapp官网( ...

  2. No cache or cacheManager properties have been set. Authorization cache cannot be obtained.

    20235 [http-bio-8080-exec-10] INFO o.a.shiro.realm.AuthorizingRealm - No cache or cacheManager prope ...

  3. 4) Maven 安装

    # ----------------------------------------------------------------------------# Maven2 Start Up Batc ...

  4. day03(接口,多态)

    接口:            概念:是功能的集合,可以当做引用数据类型的一种.比抽象类更加抽象. 接口的成员:               成员变量:必须使用final修饰 默认被 public &a ...

  5. (并查集 添加关系)How Many Answers Are Wrong --Hdu --3038

    链接: http://acm.hdu.edu.cn/showproblem.php?pid=3038 http://acm.hust.edu.cn/vjudge/contest/view.action ...

  6. 用 PHP 编写 http 服务器

    概述 众所周知,我们一般使用 PHP 开发Web程序时需要使用到比如Apache或Nginx等Web服务器来支持,那么有没有办法直接使用PHP开发HTTP服务器,答案当然是可以的,最近看了一遍Work ...

  7. eclipse快捷键(增加一些4连组合快捷键)

    http://www.blogjava.net/i369/articles/83309.html   ECLISPE的快捷键大全 Eclipse 常用快捷键收集2006年09月29日 星期五 12:0 ...

  8. Python - 更改pip源至国内镜像

    永久使用 [windows] 在用户名目录下创建一个目录 C:\Users\xxx\pip [linux] ~/.pip/pip.conf 新建pip.ini [global] index-url = ...

  9. C# DataTable导出EXCEL后身份证、银行卡号等长数字信息显示乱码解决

    在DataTable导出EXCEL后发现有些格式显示有问题,比如身份证.银行卡号等大于11位的数字显示为科学计数法.13681-1等 带中划线的两段数字显示为日期格式等. 处理方法如下: public ...

  10. On extracting ops from LLVM backend

    Symbols and ops generation: llvm::Function* BackendLLVM::build_llvm_instance (bool groupentry) Work ...