import java.time.Clock;
import java.time.Duration;
import java.time.Instant;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.Month;
import java.time.MonthDay;
import java.time.Year;
import java.time.YearMonth;
public class NewDataPackageTest {
public static void main(String[] args) {
/*------下面是关于Clock的用法-------*/
//获取当前Clock
Clock clock = Clock.systemUTC();
System.out.println("当前时刻为:" + clock.instant());
//获取clock对应的毫秒数,与System.currentTimeMillis()输出相同
System.out.println(clock.millis());
System.out.println(System.currentTimeMillis());
/*-----下面是关于Duration的用法----- */
Duration d = Duration.ofSeconds(6000);
System.out.println("6000秒相当于" + d.toMinutes() + "分");
System.out.println("6000秒相当于" + d.toHours() + "时");
System.out.println("6000秒相当于" + d.toDays() + "天");
//在clock基础上增加6000秒,返回新的Clock
Clock clock2 = Clock.offset(clock, d);
System.out.println("当前时刻加6000秒为:" + clock2.instant());
/*-----下面是Instant的用法-----*/
//获取当前时间
Instant instant = Instant.now();
System.out.println(instant);
//instant增加6000秒,返回新的Instant
Instant instant2 = instant.plusSeconds(6000);
System.out.println(instant2);
//根据字符串解析Instant对象
Instant instant3 = Instant.parse("2014-02-23T10:12:35.342Z");
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.minus(Duration.ofDays(5));
System.out.println(instant5);
/*-----下面是LocalData的用法-----*/
LocalDate localDate = LocalDate.now();
System.out.println(localDate);
//获得2014年的第146天
localDate = LocalDate.ofYearDay(2014, 146);
System.out.println(localDate);
//设置为2014年5月21日
localDate = LocalDate.of(2014, Month.MAY, 21);
System.out.println(localDate);
/*-----LocalTime的用法----- */
//获取当前时间
LocalTime localtime = LocalTime.now();
System.out.println(localtime);
//设置时间为22点33分
localtime = LocalTime.of(22, 33);
System.out.println(localtime);
//返回一天当中的第5503秒
localtime = LocalTime.ofSecondOfDay(5503);
System.out.println(localtime);
/*-----下面是localDateTime的用法-----*/
//获取当前时间
LocalDateTime localdatetime = LocalDateTime.now();
//当前日期时间加上25小时3分钟
LocalDateTime future = localdatetime.plusHours(25).plusMinutes(3);
System.out.println(future);
/*-----下面是关于Year、YearMorton、MonthDay的用法实例*/
Year year = Year.now();
System.out.println("当前年份:" + year);
year = year.plusYears(5);
System.out.println("当前年份加五年:" + year);
//根据指定月份获取YearMorth
YearMonth ym = year.atMonth(10);
System.out.println("当前年的10月:" + ym);
//当前年月加5年在减3月
ym = ym.plusYears(5).minusMonths(3);
System.out.println("当前年月加5年在减3月:" + ym);
MonthDay md = MonthDay.now();
System.out.println("当前月日:" + md);
//设置为5月23日
MonthDay md2 = md.with(Month.MAY).withDayOfMonth(23);
System.out.println("5月23日:" + md2);
}
}