Java 8 新日期和時間API

2021-09-11 17:34:30 字數 2630 閱讀 9470

日期類(例:2018-02-08)只包含日期,不可變類,類定義:

public final class localdate

implements temporal, temporaladjuster, chronolocaldate, serializable

複製**

localdate now = localdate.of(2018,3,19);//帶檢查

*** 2018-03-19

localdate now = localdate.now();

*** 2018-02-08

//將字串轉成localdate,無法解析時拋異常

localdate parse = localdate.parse("2018-03-29");

log.info(""+ now.getyear()); //2018

log.info(""+ now.getmonth()); //february

log.info(""+ now.getmonthvalue()); //2

log.info(""+now.getdayofmonth()); //8

log.info(""+now.getdayofweek()); //thursday

log.info(""+now.getdayofyear()); //39

log.info(""+now.isleapyear()); //false

log.info(""+now.lengthofmonth()); //28

log.info(""+now.lengthofyear()); //365

複製**

public final class localtime

implements temporal, temporaladjuster, comparable, serializable {

複製**

localtime nowtime = localtime.now();

*** 16:26:32.438

localtime nowtime = localtime.of(15,30);

*** 15:30

localtime nowtime = localtime.of(15,30,20);

*** 15:30:20

//將字串轉成localtime,無法解析時拋異常

localtime parse1 = localtime.parse("15:12:25");

log.info(""+nowtime.gethour());//16

log.info(""+nowtime.getminute());//27

log.info(""+nowtime.getsecond());//28

log.info(""+nowtime.getnano()); //299000000

複製**

public final class localdatetime

implements temporal, temporaladjuster, chronolocaldatetime, serializable {

複製**

localdatetime localdatetime = localdatetime.of(2018, 2, 14, 15, 23, 24);

*** 2018-02-14t15:23:24

localdatetime localdatetime = localdatetime.of(localdate.now(), localtime.now());

localdatetime localdatetime = localdate.now().attime(localtime.now());

localdatetime localdatetime = localtime.now().atdate(localdate.now());

localdate localdate = localdatetime.tolocaldate();

localtime localtime =localdatetime.tolocaltime();

複製**

public final class period

implements chronoperiod, serializable

複製**

localdate now = localdate.now();

log.info(""+ now); //2018-02-08

localdate parse = localdate.parse("2017-02-09");

period between = period.between(parse, now);//p11m30d

log.info(""+between.getyears()); //0

log.info(""+between.getmonths());//11

log.info(""+between.getdays());//30

複製**

Java 8 新的日期相關 API

使用of方法建立例項,靜態不可變物件 localdate localdate localdate.of 2019,5,20 建立 localdate 物件 localtime localtime localtime.of 22,5,23 建立 localtime 物件 localdatetime l...

java8新特性之日期時間操作

方法 概述now 根據當前時間建立物件 of 根據指定時間建立物件 plusdays plusweeks plusmonths plusyears 向當前 localdate 物件新增幾天 幾周 幾月 幾年 minusdays minusweeks minusmonths minusyears 從當...

JAVA 8日期處理類

以及格式化工具類 datetimeformatter chronofield 獲取時間值 chronounit 時間單位 localdate oneday localdate.now system.out.println oneday localdatetime twoday localdateti...