zoukankan      html  css  js  c++  java
  • 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文档介绍

           

    文本加代码

    1  LocalDate localDateMin = LocalDate.MIN;
    2         System.out.println("localDateMin年的最小取值范围 :
    " + localDateMin);
    3 
    4         LocalDate localDateText = LocalDate.parse("2018-12-05");
    5         System.out.println("localDateText输出字符串日期 :
    " + localDateText);
    View Code

     1 LocalDate localDate = LocalDate.now();
     2 
     3         System.out.println("localDate获取当前yyyy-mm-dd :
    " + localDate);
     4 
     5         LocalDate localDateSystem = LocalDate.now(ZoneId.systemDefault());
     6 
     7         System.out.println("当前系统默认时间:
    " + localDateSystem);
     8 
     9         LocalDate localDateChinese = LocalDate.now(ZoneId.of("GMT+8", new HashMap<>(64)));
    10 
    11         System.out.println("获取某个时区的国家当前日期:
    " + localDateChinese);
    View Code

    1 Clock clock = Clock.systemDefaultZone();
    2         LocalDate localDateClock = LocalDate.now(clock);
    3         System.out.println("localDateClock使用默认时区转换为日期和时间yyyy-mm-dd:
    " + localDateClock);
    View Code

    now 的方法

    下周一的日期
    1 LocalDate nextMonday = LocalDate.now().with(TemporalAdjusters.next(DayOfWeek.MONDAY));
    2 
    3         System.out.println("nextMonday下周一的日期 :
    " + nextMonday);
    View Code
    获取当前是年月情况
    1 LocalDate localDateGet = LocalDate.now();
    2 
    3         System.out.println("localDateGet获取当前是一年的第几天 :
    " + localDateGet.getDayOfYear());
    4         System.out.println("localDateGet获取当前是本月的第几天 :
    " + localDateGet.getDayOfMonth());
    5         System.out.println("localDateGet获取当前星期几 :
    " + localDateGet.getDayOfWeek());
    6         System.out.println("localDateGet获取当前年 :
    " + localDateGet.getYear());
    7         System.out.println("localDateGet获取当前月 :
    " + localDateGet.getMonth());
    View Code

    1 LocalDate localDateOf = LocalDate.of(2018, 12, 30);
    2 
    3         System.out.println("localDateOf获取设置的yyyy-mm-dd:
    " + localDateOf);
    4 
    5         LocalDate localDateOfYearDay = LocalDate.ofYearDay(2018, 352);
    6 
    7         System.out.println("localDateOfYearDay获取一年的第352天是哪月哪日的yyyy-mm-dd:
    " + localDateOfYearDay);
    View Code

    1 LocalDate dateFromBase = LocalDate.ofEpochDay(365);
    2         System.out.println("1970年的365天后是:
    " + dateFromBase);
    View Code

    1 LocalDate localDateFormatNow = LocalDate.from(ZonedDateTime.now());
    2         System.out.println("当前日期是:
    " + localDateFormatNow);
    View Code

    1 LocalDate localDateText = LocalDate.parse("2018-12-05");
    2         System.out.println("localDateText输出字符串日期 :
    " + localDateText);
    3 
    4         LocalDate localDateFormat = LocalDate.parse("20181223", DateTimeFormatter.BASIC_ISO_DATE);
    5         System.out.println("localDateFormat格式化日期 :
    " + localDateFormat);
    View Code

    git地址:点击这里

    目前总结这些,以后使用到还会补充,希望对于大家有帮助,如果有疑问请留下您的问题,大家一起共同讨论

  • 相关阅读:
    windows下使用mingw编译出ffplay(简化版)
    Linux中查看GNOME版本号
    Linux操作系统入门学习总结(2015.10)
    c++11并发机制
    CentOS 7修改管理员密码
    windows下批量杀死进程
    ffmpeg抓屏输出的设置
    User-Defined-Literal自定义字面量
    GitHub支持的Markdown语法 GitHub Flavored Markdown
    c++11支持类数据成员的初始化
  • 原文地址:https://www.cnblogs.com/liuyangfirst/p/10076612.html
Copyright © 2011-2022 走看看