1. // 获取当前日期
  2. LocalDate now = LocalDate.now();
  3. // 设置日期
  4. LocalDate now2 = LocalDate.of(2099, 2, 28);
  5. // 解析日期,格式必须是yyyy-MM-dd
  6. LocalDate now3 = LocalDate.parse("2018-01-12");
  7. DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy/MM/dd");
  8. String formatRs = now.format(dtf);
  9. // 取本月第一天
  10. LocalDate firstDay = now.with(TemporalAdjusters.firstDayOfMonth());
  11. LocalDate firstDay2 = now.withDayOfMonth(1);
  12. // 取本月第2天
  13. LocalDate secondDay = now.withDayOfMonth(2);
  14. LocalDate nextMonthDay = now.with(TemporalAdjusters.firstDayOfNextMonth());
  15. LocalDate nextYearDay = now.with(TemporalAdjusters.firstDayOfNextYear());
  16. // 明年的这一天
  17. LocalDate localDate = now.plusYears(1);
  18. // 当前日期加上往后推20天
  19. LocalDate plusDate = now.plus(20, ChronoUnit.DAYS);
  20. LocalDate plusYear = now.plus(10, ChronoUnit.YEARS);
  21. // 当前日期往前推10天
  22. LocalDate minusDay = now.minusDays(10);
  23. LocalDate minusYear = now.minus(10, ChronoUnit.YEARS);
  24. //localDate转Date
  25. ZoneId zoneId = ZoneId.systemDefault();
  26. ZonedDateTime zdt = now.atStartOfDay(zoneId);
  27. Instant instant = zdt.toInstant();
  28. Date fromDate = Date.from(instant);
  29. // Date转LocalDate
  30. Date date = new Date();
  31. Instant instantToUse = date.toInstant();
  32. ZoneId zoneIdToUse = ZoneId.systemDefault();
  33. LocalDate localDateToShow = instantToUse.atZone(zoneIdToUse).toLocalDate();
  34. // 比较日期大小
  35. boolean b1 = localDateToShow.equals(LocalDate.of(2018, 04, 27));
  36. boolean b2= localDateToShow.equals(LocalDate.of(2018, 04, 26));
  37. // 判断日期前后 -> false
  38. boolean b3 = localDateToShow.isAfter(LocalDate.of(2018, 04, 26));//false
  39. boolean b4 = localDateToShow.isAfter(LocalDate.of(2018, 04, 25));//true
  40. boolean b5 = localDateToShow.isBefore(LocalDate.of(2018, 04, 26));//false
  41. boolean b6 = localDateToShow.isBefore(LocalDate.of(2018, 04, 25));//false
  42. boolean b7 = localDateToShow.isBefore(LocalDate.of(2018, 04, 27));//true
  43. // 计算两个日期之间的时间间隔 格式为:x年x月x天
  44. Period between = Period.between(localDateToShow, LocalDate.of(2018, 05, 28));
  45. long bwDays = ChronoUnit.DAYS.between(localDateToShow, LocalDate.of(2018, 05, 28));

Java8中LocalDate的使用---项目中日期处理的更多相关文章

  1. Intellij IDEA 中如何查看maven项目中所有jar包的依赖关系图(转载)

    Intellij IDEA 中如何查看maven项目中所有jar包的依赖关系图 2017年04月05日 10:53:13 李学凯 阅读数:104997更多 所属专栏: Intellij Idea   ...

  2. 解决tomcat下面部署多个项目log4j的日志输出会集中输出到一个项目中的问题

    在一次项目上线后,发现了一个奇怪的问题,经过对源码的阅读调试终于解决,具体经过是这样的: 问题描述:tomcat7下面部署多个项目,log4j的日志输出会集中输出到一个项目中,就算配置了日志文件的绝对 ...

  3. vue 项目中的坑 在项目中遇到 持续更新ing

    1.vue2.0 不支持 v-html 后绑定的内容使用过滤,可是有时候过滤必须使用-----------解决:通过methods中定义方法 然后 v-html='myMethods(string)' ...

  4. 在eclipse中如何在大量项目中查找指定文件

    在eclipse中如果希望在大量的项目中寻找指定的文件可不是一件轻松的事,还好eclipse提供了强大的搜索功能. 我们可以通过通配符或正则表达式来设定查寻条件,下面是操作示例: ctrl+h 打开搜 ...

  5. 在eclipse中如何在大量项目中查找指定文件(转载)

    转载:http://blog.csdn.net/inowcome/article/details/6699227 在eclipse中如果希望在大量的项目中寻找指定的文件可不是一件轻松的事,还好ecli ...

  6. Intellij IDEA 中如何查看maven项目中所有jar包的依赖关系图

    Maven 组件界面介绍 如上图标注 1 所示,为常用的 Maven 工具栏,其中最常用的有: 第一个按钮:Reimport All Maven Projects 表示根据 pom.xml 重新载入项 ...

  7. IDEA中的maven web 项目中如何设置自己的本地仓库

    我们在创建maven项目的时候如何不使用系统指定的本地仓库,而使用自己设置的仓库呢,这里小女子就来进行讲解一下吧! 讲解一:你要想找到settings.xml你就要自己我去官网上去下载apache-m ...

  8. TP v5中环境变量在项目中的应用

    环境变量,顾名思义就是在不同的系统环境,同一个变量的值可以有所不同. 如开发环境.测试环境与正式环境下,数据库配置.静态资源文件Url前缀.缓存.各种key等配置都不相同,对于提交到仓库中的代码,理论 ...

  9. (网页)SQLserver中在上线的项目中遇到科学计数法怎么办?

    遇到这个问题,首先上线的数据能清除吗?显然是不能的. 1.首先要去找这些科学计数法的数字是哪里来的. 2.怎么在不改变数据的情况下去操作这张表.可以使用convert()转一下Decimal.

随机推荐

  1. Qt 子线程更新Ui

    最近做练习,写一个Qt版的飞机大战,需要用子线程更新UI,发现Qt子线程不能更新Ui,否则程序会崩溃.在网上百度了下,说是需要在子线程自定义信号,然后在线程回调的run()函数里发射信号,主线程连接信 ...

  2. Fortify漏洞之Insecure Randomness(不安全随机数)

    继续对Fortify的漏洞进行总结,本篇主要针对  Insecure Randomness  漏洞进行总结,如下: 1.Insecure Randomness(不安全随机数) 1.1.产生原因: 成弱 ...

  3. 安装License需要重启

    "only commands for license handling are allowed in current state" Can you confirm if licen ...

  4. Multipath 多路径配置说明

    查看主机或者存储交换机上的www号,在存储上将LUN映射给需要的主机 cat  /sys/class/fc_host/host*/port_name 0x2002d0431efb7f5d 6d 该ww ...

  5. HDFS读流程

    客户端先与NameNode通信,获取block位置信息,之后线性地先取第一个块,然后接二连三地获取,取回一个块时会进行MD5验证,验证通过后会使read顺利进行完,当最终读完所有的block块之后,拼 ...

  6. 学习python的日常5

    形如__xxx__的变量或者函数名,在python中是有特殊用途的,例如__slots__是为了绑定属性的名称, __len()__方法是为了让class作用于len()函数,很多这样的函数都可以帮忙 ...

  7. 农业银行网上支付平台-商户接口编程-demo调试

    调试的时候会报一个这样的错误. ReturnCode = [1999]ErrorMessage = [系统发生无法预期的错误 - 第1个证书无法读取证书文档] 网上其他资料说是权限问题,有的人可能是权 ...

  8. new 运算符的原理

    关于 new 运算符的原理: 1.红宝书上解释: (1)创建一个新对象 (2)将构造函数的作用域赋给新对象 (3)执行构造函数中的代码 (4)返回新对象 2.MDN上的解释: (1)一个继承自 Foo ...

  9. linux系统编程之管道(二)

    今天继续研究管道,话不多说,言归正传: 对于管道,有一定的读写规则,所以这里主要是对它的规则进行探讨,具体规则如下: 规则一: 下面用程序来验证下,还是用上节学的子进程写数据,父进程读取数据的例子,只 ...

  10. [牛客网 -leetcode在线编程 -01] max-points-on-a-line -穷举

    题目及题目来源 链接:https://www.nowcoder.com/questionTerminal/bfc691e0100441cdb8ec153f32540be2 来源:牛客网 首页 > ...