Java 中的日期与时间简介

Java 中的输入/输出与流

Alex Liu

Software Development Engineer

创建日期对象

  • LocalDate
    • 表示无时间的日期
  • LocalTime
    • 表示无日期的时间
  • 导入所需类
import java.time.LocalDate;
import java.time.LocalTime;
Java 中的输入/输出与流

创建日期对象(续)

  • 使用 .now() 获取当前日期与时间
    LocalDate date = LocalDate.now();
    LocalTime time = LocalTime.now();
    System.out.println(date);
    System.out.println(time);
    
  • (注意:时间因程序执行时刻而异)
2025-03-10
12:45:30.123456
Java 中的输入/输出与流

在 Java 中格式化日期

  • DateTimeFormatter
    • 定义自定义日期格式
    • 支持多种模式,如 yyyy-MM-ddMM/dd/yyyy
  • 导入必要的类
    import java.time.LocalDate;
    import java.time.format.DateTimeFormatter;
    
Java 中的输入/输出与流

在 Java 中格式化日期(续)

  • 创建 LocalDate 实例 date
LocalDate date = LocalDate.now(); // 当前格式为:`2025-03-10`
  • 使用 .ofPattern() 创建模式为 MM/dd/yyyyDateTimeFormatter
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("MM/dd/yyyy");
  • 使用 .format() 应用 DateTimeFormatter
System.out.println(date.format(formatter))
03/10/2025
Java 中的输入/输出与流

将字符串解析为日期

  • 使用 LocalDate.parse() 将文本转为日期

    • 确保格式与输入字符串匹配
  • 使用 yyyy-MM-dd 格式的文本通过 .parse() 解析为 Date 对象

    LocalDate parsedDate = LocalDate.parse("2024-03-10");
    System.out.println(parsedDate);
    
  • 打印该 Date 对象的输出为:

    2024-03-10
    
Java 中的输入/输出与流

执行日期调整

  • 使用 .plusDays().minusDays() 调整日期
LocalDate date = LocalDate.now();
// 当前值:
System.out.println(date); 
// 使用 `.plusDays()`,值为 `7`
LocalDate futureDate = date.plusDays(7);
// 调整后值:
System.out.println(futureDate);
2025-03-10
2025-03-17
Java 中的输入/输出与流

执行日期调整(续)

  • 使用 .minusDays(),值为 7
    LocalDate pastDate = date.minusDays(7);
    System.out.println(pastDate);
    
  • pastDate 的当前值:
    2025-03-03
    
Java 中的输入/输出与流

总结

  • LocalDateLocalTime 分别管理日期与时间
    • 注意:时间因程序执行时刻而异
    • .parse() 可将文本转为日期
    • .now() 获取当前日期/时间
  • DateTimeFormatter 用于格式化与解析日期
    • 自定义日期格式
    • 支持多种模式,如 yyyy-MM-ddMM/dd/yyyy
  • 使用 .plusDays().minusDays() 进行日期计算
Java 中的输入/输出与流

开始练习吧!

Java 中的输入/输出与流

Preparing Video For Download...