7-Java8新增的日期、时间类 发表于 2018-03-11 | 更新于 2018-10-18 | 分类于 Java Java8新增的日期、时间包 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869//下面是关于 Clock 的用法//获取当前 ClockClock clock=Clock.systemUTC();//使用世界时生成 clock//通过 Clock 获取当前时刻System.out.println("当前时刻为:"+ clock.instant();//获取 clock 对象对应的毫秒数,与 System.currentTimeMillis() 输出相同System.out.println(clock.millis());System.out.println(System.currentTimeMillis());//--下面是关于 Duration 的用法Duration duration=Duration.ofSeconds(6000);System.out.println("6000秒相当于"+ duration.toMinutes + "分");System.out.println("6000秒相当于"+ duration.toHours() + "小时");System.out.println("6000秒相当于"+ duration.toDays() + "天");//在 clock 对象基础上增加6000秒,返回新的 ClockClock clock2=Clock.offset(clock,duration);//---下面是关于 Instant 的用法//获取当前时间Instant instant=Instant.now();System.out.pritnln(instant);//instant 添加 6000秒(即100分钟),返回新的 InstantInstant instant2=instant.plusSeconds(6000);System.out.println(instant2);//根据字符串解析 Instant 对象Instant instant3=Instant.parse("2018-03-11T23:12:45.891Z");System.out.println(instant3);//在 instant3 的基础上添加 5小时4分钟 Instant instant4=instant3.plus(Duration.ofHours(5).plusMinutes(4));System.out.println(instant4);//获取 instant4 的5天以前的时刻Instant instant5=instant4.mimutes(Duration.ofDays(5));System.out.println(instant5);//---下面是关于 LocalDate 的用法LocalDate localDate=LocalDate.now();System.out.println(localDate);//获得2018年的第146天localDate=LocalDate.ofYearDay(2018,146);System.out.println(localDate); //2018-05-26//设置为 2018年5月26日localDate=LocalDate.of(2018,Month.May,26);//---下面是关于 LocalTime 的用法//获取当前时间LocalTime localTime=LocalTime.now();//设置为 22点33分localTime=LocalTime.of(22,33);//返回一天中的第 5503秒localTime=LocalTime.ofSecondofDay(5503);//---下面是关于 LocalDateTime 的用法//获取当前日期、时间LocalDateTime localDateTime=LocalDateTime.now();//当前日期、时间加上25小时3分钟LocalDateTime future=localDateTime.plusHours(25).plusMinutes(3);//---下面是关于 Year、Year Month、MonthDay 的用法Year year=Year.now();//当前年份再加5年year=year.plusYears(5);//根据指定月份获取 YearMonthYearMonth yearMonth=year.atMonth(10);//输出 XXXX-10,XXXX为当前年份//当前年份再加5年、减去3个月year=year.plusYears(5).minusMonths(3);//当前日期MonthDay monthDay=MonthDay.now();//设置为5月23日MonthDay monthDay2=monthDay.with(Month.MAY).withDayOfMonth(23);