使用LocalDateTime来代替Date

1. 前言

在我们使用Date的时候,会发现很多无法理解的返回值,而且有很多方法是已经被弃用了的
使用LocalDateTime来代替Date_第1张图片
在我们使用了jdk8+之后,我们可以使用LocalDate,LocalTime或者LocalDateTime来代替传统的Date

2. 使用示例

代码示例以及输出


import java.time.LocalDateTime;
import java.time.Month;
import java.time.format.DateTimeFormatter;
import java.util.Date;

/**
 * 

* LocalDateTime的使用 *

* * @author Levi * @since 2019/12/25 */ public class LocalDateTimeUtil { public static void main(String[] args) { System.out.println("-------------使用Date-------------"); Date rightNow = new Date(); System.out.println(rightNow); System.out.println(rightNow.getYear()); System.out.println(rightNow.getMonth()); System.out.println(rightNow.getDay()); System.out.println(rightNow.getHours()); System.out.println(rightNow.getMinutes()); System.out.println(rightNow.getSeconds()); System.out.println("----------使用LocalDateTime------------"); LocalDateTime now = LocalDateTime.now(); System.out.println(now); System.out.println(now.getYear()); System.out.println(now.getMonth()); System.out.println(now.getDayOfMonth()); System.out.println(now.getHour()); System.out.println(now.getMinute()); System.out.println(now.getSecond()); System.out.println("-------------构造一个日期------------"); LocalDateTime time = LocalDateTime.of(2020, Month.MAY, 1, 5, 20, 0); System.out.println(time); System.out.println("-------------修改日期----------------"); // 减使用minus System.out.println(time.minusYears(1L)); // 加使用plus System.out.println(time.plusMonths(5)); // 直接修改使用with System.out.println(time.withYear(2022)); System.out.println("----------格式化日期-------------"); String result1 = now.format(DateTimeFormatter.ISO_DATE); String result2 = now.format(DateTimeFormatter.BASIC_ISO_DATE); String result3 = now.format(DateTimeFormatter.ofPattern("yyyy/MM/dd")); System.out.println("格式化后的日期(基本样式 1)-----> " + result1); System.out.println("格式化后的日期(基本样式 2)-----> " + result2); System.out.println("格式化后的日期(自定义样式)-----> " + result3); System.out.println("------------时间反解析----------"); LocalDateTime parse = LocalDateTime.parse("2020--01--01 01:01", DateTimeFormatter.ofPattern("yyyy--MM--dd HH:mm")); System.out.println(parse); } }

输出:
使用LocalDateTime来代替Date_第2张图片

我们不难发现LocalDateTime还是很友好的,建议jdk8+的小伙伴尽可能在之后使用LocalDateTime而不是去使用Date

你可能感兴趣的:(java基础(高级))