JAVA 8 主要新特性 ----------------(七)新时间日期 API -----LocalDate
一、改版原因
1、老板的Date和Calander存在问题,日期操作名称混乱,有的在text下,有的在util下,包名混乱
2、Simple包混乱,致命错误线程不安全。
3、1.8规范的放在java.time目录下
二、1.8日期使用简介
1、使用 LocalDate、LocalTime、LocalDateTime
LocalDate、LocalTime、LocalDateTime 类的实 例是不可变的对象,分别表示使用 ISO-8601日 历系统的日期、时间、日期和时间。它们提供了简单的日期或时间,并不包含当前的时间信息。也不包含与时区相关的信息。
2、LocalDateJDK文档介绍

文本加代码

LocalDate localDateMin = LocalDate.MIN;
System.out.println("localDateMin年的最小取值范围 :\n" + localDateMin); LocalDate localDateText = LocalDate.parse("2018-12-05");
System.out.println("localDateText输出字符串日期 :\n" + localDateText);

LocalDate localDate = LocalDate.now();
System.out.println("localDate获取当前yyyy-mm-dd :\n" + localDate);
LocalDate localDateSystem = LocalDate.now(ZoneId.systemDefault());
System.out.println("当前系统默认时间:\n" + localDateSystem);
LocalDate localDateChinese = LocalDate.now(ZoneId.of("GMT+8", new HashMap<>(64)));
System.out.println("获取某个时区的国家当前日期:\n" + localDateChinese);

Clock clock = Clock.systemDefaultZone();
LocalDate localDateClock = LocalDate.now(clock);
System.out.println("localDateClock使用默认时区转换为日期和时间yyyy-mm-dd:\n" + localDateClock);
now 的方法
下周一的日期
LocalDate nextMonday = LocalDate.now().with(TemporalAdjusters.next(DayOfWeek.MONDAY));
System.out.println("nextMonday下周一的日期 :\n" + nextMonday);
获取当前是年月情况
LocalDate localDateGet = LocalDate.now();
System.out.println("localDateGet获取当前是一年的第几天 :\n" + localDateGet.getDayOfYear());
System.out.println("localDateGet获取当前是本月的第几天 :\n" + localDateGet.getDayOfMonth());
System.out.println("localDateGet获取当前星期几 :\n" + localDateGet.getDayOfWeek());
System.out.println("localDateGet获取当前年 :\n" + localDateGet.getYear());
System.out.println("localDateGet获取当前月 :\n" + localDateGet.getMonth());

LocalDate localDateOf = LocalDate.of(2018, 12, 30);
System.out.println("localDateOf获取设置的yyyy-mm-dd:\n" + localDateOf);
LocalDate localDateOfYearDay = LocalDate.ofYearDay(2018, 352);
System.out.println("localDateOfYearDay获取一年的第352天是哪月哪日的yyyy-mm-dd:\n" + localDateOfYearDay);

LocalDate dateFromBase = LocalDate.ofEpochDay(365);
System.out.println("1970年的365天后是:\n" + dateFromBase);

LocalDate localDateFormatNow = LocalDate.from(ZonedDateTime.now());
System.out.println("当前日期是:\n" + localDateFormatNow);

LocalDate localDateText = LocalDate.parse("2018-12-05");
System.out.println("localDateText输出字符串日期 :\n" + localDateText);
LocalDate localDateFormat = LocalDate.parse("20181223", DateTimeFormatter.BASIC_ISO_DATE);
System.out.println("localDateFormat格式化日期 :\n" + localDateFormat);
git地址:点击这里
目前总结这些,以后使用到还会补充,希望对于大家有帮助,如果有疑问请留下您的问题,大家一起共同讨论
JAVA 8 主要新特性 ----------------(七)新时间日期 API -----LocalDate的更多相关文章
- Java8新特性之一、时间日期API
package com.effective.common.base.date; import java.time.Instant; import java.time.LocalDate; import ...
- JAVA 8 主要新特性 ----------------(七)新时间日期 API ----- Duration “时间”间隔
Duration:用于计算两个“时间”间隔 简介: 用法: 1.Zero常量 实例: Duration duration = Duration.ZERO; System.out.println(&qu ...
- JAVA 8 主要新特性 ----------------(七)新时间日期 API -----LocalDateTime
一.LocalDateTime简介 二.实战讲解 LocalDateTime localDateMax = LocalDateTime.MAX; System.out.println("lo ...
- JAVA 8 主要新特性 ----------------(七)新时间日期 API -----Instant 时间戳
一.简介 用于“时间戳”的运算.它是以Unix元年(传统 的设定为UTC时区1970年1月1日午夜时分)开始 所经历的描述进行运算 二.文档介绍 1.now Instant instantNow = ...
- Java8新特性(三)——Optional类、接口方法与新时间日期API
一.Optional容器类 这是一个可以为null的容器对象.如果值存在则isPresent()方法会返回true,调用get()方法会返回该对象. 查看结构图可以看到有如下常用方法: of(T)—— ...
- Java 8 新的时间日期 API
1. 概述 1.1 简介 Java 8 引入了一套全新的时间日期API,操作起来更简便.简单介绍下,LocalDate和LocalTime和LocalDateTime的使用: java.util.Da ...
- java8新特性——时间日期API
传统的时间 API 存在线程安全的问题,在多线程开发中必须要上锁,所以 java8 现在为我们提供了一套全新的时间日期 API ,今天进来学习一下java8 的时间日期 API. 一.使用 Local ...
- JAVA8学习——新的时间日期API&Java8总结
JAVA8-时间日期API java8之前用过的时间日期类. Date Calendar SimpleDateFormat 有很多致命的问题. 1.没有时区概念 2.计算麻烦,实现困难 3.类是可变的 ...
- 返璞归真 asp.net mvc (11) - asp.net mvc 4.0 新特性之自宿主 Web API, 在 WebForm 中提供 Web API, 通过 Web API 上传文件, .net 4.5 带来的更方便的异步操作
原文:返璞归真 asp.net mvc (11) - asp.net mvc 4.0 新特性之自宿主 Web API, 在 WebForm 中提供 Web API, 通过 Web API 上传文件, ...
随机推荐
- [Go] 开始试探一门新语言的五点思考 - Golang
1.如果在其他语言环境中写的代码很烂,那么换一门语言很可能情况更糟,因为是涉及到基本功.工程能力和心思逻辑. 2.一定要了解语言解决的问题(比如:多核并发机制性能高.省机器.简洁易学.资料少),优势是 ...
- JavaScript中面相对象OOP
方法 方法的原型链 <html> <head> <title></title> </head> <script type=" ...
- 循环列表最后一条不显示borderBottom
You could achieve this using some logic: return books.map((book, i) => { return( <View style={ ...
- install django采坑
1. install python 3 2. install pip 3. install virtual enviroment : python -m venv myvenv 4. 切换到virt ...
- eclipse中的web项目部署路径
elipse添加了server之后,如果不对tomcat的部署路径做更改,则eclipse默认对工程的部署在 eclipse-workspace\.metadata.plugins\org.eclip ...
- 20175314 《Java程序设计》第八周学习总结
20175314 <Java程序设计>第八周学习总结 教材学习内容总结 安利一个非常实用的图片处理工具:图片工厂,它具有非常强大的图片批处理能力,比如加水印.降低画质.命名等,不仅如此它还 ...
- 画布Canvas 画笔Paint
package com.example.m_evolution.View; import android.content.Context; import android.graphics.Canvas ...
- 大数据学习笔记4 - Hadoop的优化与发展(Hadoop 2.0)
前面介绍了Hadoop核心组件HDFS和MapReduce,Hadoop发展之初在架构设计和应用性能方面仍然存在不足,Hadoop的优化与发展一方面体现在两个核心组件的架构设计改进,一方面体现在Had ...
- WebForm应用log4net记录错误日志——使用线程列队写入
我的项目结构如下图: 日志帮助类库需要log4net包:工具—NuGet包管理器—管理解决方案NuGet程序包 线程日志帮助类 FlashLogger.cs 代码 using System; usin ...
- Oracle数值处理函数
1.绝对值:abs() select abs(-2) value from dual; 2.取整函数(大):ceil() select ceil(-2.001) value from du ...