public class Test5 {
public static void date() {
// 创建指定的日期
LocalDate localDate = LocalDate.of(2019, 9, 11);
System.out.println(localDate);
// 获取指定的年月日
System.out.println(localDate.getYear());
// 不写 getValue 获取岛的就是英文的月份名称
System.out.println(localDate.getMonth().getValue());
System.out.println(localDate.getDayOfMonth());
// 判断一下是不是闰年
System.out.println(localDate.isLeapYear());
System.out.println("****************************************************");
// 获取当前的日期
LocalDate date = LocalDate.now();
System.out.println(date);
// 获取对应的年月日 TemporalField 使用TemporalField读取LocalDate的值
System.out.println(date.get(ChronoField.YEAR));
System.out.println(date.get(ChronoField.MONTH_OF_YEAR));
System.out.println(date.get(ChronoField.DAY_OF_MONTH));
System.out.println("****************************************************");
// 指定时间创建
LocalTime localTime = LocalTime.of(10, 10, 22);
System.out.println(localTime);
System.out.println("****************************************************");
// 通过解析字符串新建
LocalDate localDate1 = LocalDate.parse("2029-10-10");
System.out.println(localDate1);
LocalTime localTime1 = LocalTime.parse("18:10:58");
System.out.println(localTime1);
System.out.println("****************************************************");
// LocalDateTime 带有了时区信息 2019-10-20T18:10:58
LocalDateTime dt1 = LocalDateTime.of(2019, 10, 20, 18, 10, 58);
System.out.println(dt1);
// 原有时间上加上两个小时
OffsetDateTime date1 = dt1.atOffset(ZoneOffset.ofHours(2));
System.out.println(date1);
// 获取所在的时区
System.out.println(ZoneId.systemDefault());
System.out.println(ZoneId.systemDefault().getRules());
System.out.println("****************************************************");
// 取本月第一天
LocalDate firstMonthDay = date.with(TemporalAdjusters.firstDayOfMonth());
System.out.println(firstMonthDay);
// 取出本月的第二天
LocalDate secondMonthDay = date.withDayOfMonth(2);
System.out.println(secondMonthDay);
// 取出本月的最后一天
LocalDate lastMonthDay = date.with(TemporalAdjusters.lastDayOfMonth());
System.out.println(lastMonthDay);
// 取出下一天的时间
LocalDate nextMonthDay = lastMonthDay.plusDays(1);
System.out.println(nextMonthDay);
// 取2017年1月第一个周一
LocalDate specifiedMonthDay = LocalDate.parse("2017-01-01").with(TemporalAdjusters.firstInMonth(DayOfWeek.MONDAY));
System.out.println(specifiedMonthDay);
// 取出当前日期的前一天
LocalDate previousMonthDay = date.minusDays(1);
System.out.println(previousMonthDay);
}
public static void main(String[] args) {
date();
}
}
欢迎关注我的微信公众号,更多内容将在微信公众号中发布: