JDK 8 LocalDateTime

mac2026-02-01  3

LocalDate(获取年月日)

创建LocalDate对象 LocalDate localDate = LocalDate.of(2019, 10, 29); // 构造指定的年月日 LocalDate localDate1 = LocalDate.now(); // 获取当前年月日 获取年、月、日、星期 // 获取年 int year = localDate.getYear(); // 2019 int year1 = localDate.get(ChronoField.YEAR); // 2019 // 获取月 Month month = localDate.getMonth(); // OCTOBER int month1 = localDate.get(ChronoField.MONTH_OF_YEAR); // 10 // 获取日 int day = localDate.getDayOfMonth(); // 29 int day1 = localDate.get(ChronoField.DAY_OF_MONTH); // 29 // 获取星期 DayOfWeek dayOfWeek = localDate.getDayOfWeek(); // TUESDAY int dayOfWeek1 = localDate.get(ChronoField.DAY_OF_WEEK); // 2

LocalTime(获取时分秒)

创建LocalTime对象 LocalTime localTime = LocalTime.of(10, 07, 30); // 构造指定的时分秒 LocalTime localTime1 = LocalTime.now(); // 获取当前时分秒 获取年、月、日、星期 // 获取时 int hour = localTime.getHour(); // 10 int hour1 = localTime.get(ChronoField.HOUR_OF_DAY); // 10 // 获取分 int minute = localTime.getMinute(); // 7 int minute1 = localTime.get(ChronoField.MINUTE_OF_HOUR); // 7 // 获取秒 int second = localTime.getSecond(); // 30 int second1 = localTime.get(ChronoField.SECOND_OF_MINUTE); // 30

LocalDateTime(获取年月日时分秒)

创建LocalDateTime对象 // 获取当前时分秒、时分秒 LocalDateTime localDateTime = LocalDateTime.now(); // 构造指定的年月日、时分秒 LocalDateTime localDateTime1 = LocalDateTime.of(2019, Month.OCTOBER, 29, 14, 30, 50); // 根据localDate和localTime来构建LocalDateTime对象 LocalDateTime localDateTime2 = LocalDateTime.of(localDate, localTime); LocalDateTime localDateTime3 = localDate.atTime(localTime); LocalDateTime localDateTime4 = localTime.atDate(localDate); 获取LocalDate LocalDate localDate = localDateTime.toLocalDate(); 获取LocalTime LocalTime localTime = localDateTime.toLocalTime();

Instant(获取秒、毫秒)

创建Instant对象 Instant instant = Instant.now(); 获取秒 long currentSecond = instant.getEpochSecond(); 获取毫秒 long currentMilli = instant.toEpochMilli();

修改LocalDateTime/LocalDateTime/LocalTime(修改时间)

修改LocalDateTime LocalDateTime localDateTime = LocalDateTime.now(); // 增加一年 LocalDateTime localDateTime1 = localDateTime.plusYears(1); LocalDateTime localDateTime2 = localDateTime.plus(1, ChronoUnit.YEARS); // 减少一年 LocalDateTime localDateTime3 = localDateTime.minusMonths(1); LocalDateTime localDateTime4 = localDateTime.minus(1, ChronoUnit.YEARS); // 增加一个月 LocalDateTime localDateTime5 = localDateTime.plusMonths(1); LocalDateTime localDateTime6 = localDateTime.plus(1,ChronoUnit.MINUTES); // 减少一个月 LocalDateTime localDateTime7 = localDateTime.minusMonths(1); LocalDateTime localDateTime8 = localDateTime.minus(1,ChronoUnit.MINUTES); // 增加一天 LocalDateTime localDateTime9 = localDateTime.plusDays(1); LocalDateTime localDateTime10 = localDateTime.plus(1,ChronoUnit.DAYS); // 减少一天 LocalDateTime localDateTime11 = localDateTime.minusDays(1); LocalDateTime localDateTime12 = localDateTime.minus(1,ChronoUnit.DAYS); // 增加一小时 LocalDateTime localDateTime13 = localDateTime.plusHours(1); LocalDateTime localDateTime14 = localDateTime.plus(1,ChronoUnit.HOURS); // 减少一小时 LocalDateTime localDateTime15 = localDateTime.minusHours(1); LocalDateTime localDateTime16 = localDateTime.minus(1,ChronoUnit.HOURS); // 增加一分钟 LocalDateTime localDateTime17 = localDateTime.plusMinutes(1); LocalDateTime localDateTime18 = localDateTime.plus(1,ChronoUnit.MINUTES); // 减少一分钟 LocalDateTime localDateTime19 = localDateTime.minusMinutes(1); LocalDateTime localDateTime20 = localDateTime.minus(1,ChronoUnit.MINUTES); // 增加一秒 LocalDateTime localDateTime21 = localDateTime.plusSeconds(1); LocalDateTime localDateTime22 = localDateTime.plus(1,ChronoUnit.SECONDS); // 减少一秒 LocalDateTime localDateTime23 = localDateTime.minusSeconds(1); LocalDateTime localDateTime24 = localDateTime.minus(1,ChronoUnit.SECONDS); // 增加一周 LocalDateTime localDateTime25 = localDateTime.plusWeeks(1); LocalDateTime localDateTime26 = localDateTime.plus(1,ChronoUnit.WEEKS); // 减少一周 LocalDateTime localDateTime27 = localDateTime.minusWeeks(1); LocalDateTime localDateTime28 = localDateTime.minus(1,ChronoUnit.WEEKS); // 修改成2020年 LocalDateTime localDateTime29 = localDateTime.withYear(2020); LocalDateTime localDateTime30 = localDateTime.with(ChronoField.YEAR, 2020); // 修改成7月份 LocalDateTime localDateTime31 = localDateTime.withMonth(7); LocalDateTime localDateTime32 = localDateTime.with(ChronoField.MONTH_OF_YEAR, 7); // 修改成当本月5日 LocalDateTime localDateTime33 = localDateTime.withDayOfMonth(5); LocalDateTime localDateTime34 = localDateTime.with(ChronoField.DAY_OF_MONTH, 5); // 修改成本年100日 LocalDateTime localDateTime35 = localDateTime.withDayOfYear(100); LocalDateTime localDateTime36 = localDateTime.with(ChronoField.DAY_OF_YEAR, 100); // 修改成本日8点钟 LocalDateTime localDateTime37 = localDateTime.withHour(8); LocalDateTime localDateTime38 = localDateTime.with(ChronoField.HOUR_OF_DAY, 8); // 修改成本小时30分钟 LocalDateTime localDateTime39 = localDateTime.withMinute(30); LocalDateTime localDateTime40 = localDateTime.with(ChronoField.MINUTE_OF_HOUR, 30); // 修改成本分钟30秒钟 LocalDateTime localDateTime41 = localDateTime.withSecond(30); LocalDateTime localDateTime42 = localDateTime.with(ChronoField.SECOND_OF_MINUTE, 30); 修改LocalDate LocalDate localDate = LocalDate.now(); // 增加一年 LocalDate localDate1 = localDate.plusYears(1); LocalDate localDate2 = localDate.plus(1, ChronoUnit.YEARS); // 减少一年 LocalDate localDate3 = localDate.minusYears(1); LocalDate localDate4 = localDate.minus(1, ChronoUnit.YEARS); // 增加一个月 LocalDate localDate5 = localDate.plusMonths(1); LocalDate localDate6 = localDate.plus(1, ChronoUnit.MONTHS); // 减少一个月 LocalDate localDate7 = localDate.minusMonths(1); LocalDate localDate8 = localDate.minus(1, ChronoUnit.MONTHS); // 增加一天 LocalDate localDate9 = localDate.plusDays(1); LocalDate localDate10 = localDate.plus(1, ChronoUnit.DAYS); // 减少一天 LocalDate localDate11 = localDate.minusDays(1); LocalDate localDate12 = localDate.minus(1, ChronoUnit.DAYS); // 增加一周 LocalDate localDate13 = localDate.plusWeeks(1); LocalDate localDate14 = localDate.plus(1, ChronoUnit.WEEKS); // 减少一周 LocalDate localDate15 = localDate.minusWeeks(1); LocalDate localDate16 = localDate.minus(1, ChronoUnit.WEEKS); // 修改成2020年 LocalDate localDate17 = localDate.withYear(2020); LocalDate localDate18 = localDate.with(ChronoField.YEAR, 2020); // 修改成7月份 LocalDate localDate19 = localDate.withMonth(7); LocalDate localDate20 = localDate.with(ChronoField.MONTH_OF_YEAR, 7); // 修改成本月5日 LocalDate localDate21 = localDate.withDayOfMonth(5); LocalDate localDate22 = localDate.with(ChronoField.DAY_OF_MONTH, 5); // 修改成本年100日 LocalDate localDate23 = localDate.withDayOfYear(100); LocalDate localDate24 = localDate.with(ChronoField.DAY_OF_YEAR, 100); 修改LocalTime LocalTime localTime = LocalTime.now(); // 增加一小时 LocalTime localTime1 = localTime.plusHours(1); LocalTime localTime2 = localTime.plus(1, ChronoUnit.HOURS); // 减少一小时 LocalTime localTime3 = localTime.minusHours(1); LocalTime localTime4 = localTime.minus(1, ChronoUnit.HOURS); // 增加一分钟 LocalTime localTime5 = localTime.plusMinutes(1); LocalTime localTime6 = localTime.plus(1, ChronoUnit.MINUTES); // 减少一分钟 LocalTime localTime7 = localTime.minusMinutes(1); LocalTime localTime8 = localTime.minus(1, ChronoUnit.MINUTES); // 增加一秒 LocalTime localTime9 = localTime.plusSeconds(1); LocalTime localTime10 = localTime.plus(1, ChronoUnit.SECONDS); // 减少一秒 LocalTime localTime11 = localTime.minusSeconds(1); LocalTime localTime12 = localTime.minus(1, ChronoUnit.SECONDS); // 修改成本日8点钟 LocalTime localTime13 = localTime.withHour(8); LocalTime localTime14 = localTime.with(ChronoField.HOUR_OF_DAY, 8); // 修改成本小时30分钟 LocalTime localTime15 = localTime.withMinute(30); LocalTime localTime16 = localTime.with(ChronoField.MINUTE_OF_HOUR, 30); // 修改成本分钟30秒钟 LocalTime localTime17 = localTime.withSecond(30); LocalTime localTime18 = localTime.with(ChronoField.SECOND_OF_MINUTE, 30);

时间格式化

LocalDateTime时间格式化 LocalDateTime localDateTime = LocalDateTime.now(); String s1 = localDateTime.format(DateTimeFormatter.ISO_LOCAL_DATE_TIME); // 2019-10-29T13:47:21.562 String s2 = localDateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); // 自定义格式化 2019-10-29 13:47:21 LocalDate时间格式化 LocalDate localDate = LocalDate.now(); String s1 = localDate.format(DateTimeFormatter.BASIC_ISO_DATE); // 20191029 String s2 = localDate.format(DateTimeFormatter.ISO_LOCAL_DATE); // 2019-10-29 String s3 = localDate.format(DateTimeFormatter.ofPattern("yyyy/MM/dd")); // 自定义格式化 2019/10/29

解析时间

LocalDateTime解析时间 LocalDateTime localDateTime1 = LocalDateTime.parse("2019-10-29T13:47:21.562", DateTimeFormatter.ISO_LOCAL_DATE_TIME); LocalDateTime localDateTime2 = LocalDateTime.parse("2019-10-29 13:47:21", DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); LocalDate解析时间 LocalDate localDate1 = LocalDate.parse("20190910", DateTimeFormatter.BASIC_ISO_DATE); // 2019-09-10 LocalDate localDate2 = LocalDate.parse("2019-09-10", DateTimeFormatter.ISO_LOCAL_DATE); // 2019-09-10 LocalDate localDate3 = LocalDate.parse("2019/09/10", DateTimeFormatter.ofPattern("yyyy/MM/dd")); // 自定义时间格式化类型类型 2019-09-10

Date、LocalDateTime、LocalDate、LocalTime之间的装换

Date -> LocalDateTime Date date = new Date(); Instant instant = date.toInstant(); // 时刻 ZoneId zone = ZoneId.systemDefault(); // 时区 LocalDateTime localDateTime = LocalDateTime.ofInstant(instant, zone); Date -> LocalDate Date date = new Date(); Instant instant = date.toInstant(); // 时刻 ZoneId zone = ZoneId.systemDefault(); // 时区 LocalDateTime localDateTime = LocalDateTime.ofInstant(instant, zone); LocalDate localDate = localDateTime.toLocalDate(); Date -> LocalTime Date date = new Date(); Instant instant = date.toInstant(); // 时刻 ZoneId zone = ZoneId.systemDefault(); // 时区 LocalDateTime localDateTime = LocalDateTime.ofInstant(instant, zone); LocalTime localTime = localDateTime.toLocalTime(); LocalDateTime -> Date LocalDateTime localDateTime = LocalDateTime.now(); ZoneId zone = ZoneId.systemDefault(); // 时区 Instant instant = localDateTime.atZone(zone).toInstant(); // 时刻 Date date = Date.from(instant); LocalDate -> Date LocalDate localDate = LocalDate.now(); ZoneId zone = ZoneId.systemDefault(); // 时区 Instant instant = localDate.atStartOfDay().atZone(zone).toInstant(); // 时刻 Date date = Date.from(instant); LocalTime -> Date LocalTime localTime = LocalTime.now(); LocalDate localDate = LocalDate.now(); LocalDateTime localDateTime = LocalDateTime.of(localDate, localTime); ZoneId zone = ZoneId.systemDefault(); // 时区 Instant instant = localDateTime.atZone(zone).toInstant(); // 时刻 Date date = Date.from(instant);
最新回复(0)