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. SPSS-Friedman 秩和检验-非参数检验-K个相关样本检验 案例解析

    三人行,必有我师,是不是真有我师?三种不同类型的营销手段,最终的营销效果是否一样,随即区组秩和检验带你进入分析世界 今天跟大家讨论和分享一下:spss-Friedman 秩和检验-非参数检验-K个(多 ...

  2. What Is Your Grade?

    Problem Description “Point, point, life of student!”This is a ballad(歌谣)well known in colleges, and ...

  3. centos7 源码安装python3

    1.非常重要!必须得先安装py3所依赖的软件包,否则可能会出现py3安装成功,却缺少相应的pip yum groupinstall "Development tools" yum ...

  4. Create a site by Google Site - All Free

    Follow this link :  https://www.google.com/sites/help/intl/en/overview.html

  5. 拷贝构造函数——防篡改

    对于普通类型的对象来说,他们之间的复制是简单的,比如: int a = 88; int b = a; 而类和普通对象不同,类对象内部结构一般较为复杂,存在各种成员变量. #include <io ...

  6. Alwayson--使用证书创建高可用性组

    --场景: --有服务器SQLNode11,SQLNODE21,SQLNODE31三台在同一故障转移群集SQLNode01中 --的数据库服务器,安装SQL SERVER 2012 并配置启动alwa ...

  7. winform NPOI excel 导出并选择保存文件路径

    public void ExcelOp(DataGridView gdv,ArrayList selHead) { if (selHead.Count==0) { MessageBox.Show(&q ...

  8. 【cocos2d-x 3.0-Mac配置篇】

    就在昨天触控正式发布了3.0正式版本... 在这个喜大普奔的日子里,我们又开始了新一轮的革命,先不说其他的,再来看看3.0目录文件里面有什么? 首先是精简了很多,无论是从目录结构,和所用到的工具类,都 ...

  9. .net core webapi+EF Core

    .net core webapi+EF Core 一.描述: EF Core必须下载.net core2.0版本 Micorsoft.EntityFrameworkCore:EF框架的核心包Micor ...

  10. MYSQL社区版安装手册

    https://www.jb51.net/article/140412.htm 在本教程中使用MySQL最新的MySQL服务8.0.11的社区绿色版本进行安装,绿色版为zip格式的包,安装分为以下四步 ...