Java 8引入了全新的日期和时间API,即java.time包,提供了用于处理日期、时间和时间间隔的类。以下是一些示例:

  1. LocalDate:表示一个日期,例如:2023-07-03,对应MySQL的DATE类型。

    LocalDate date = LocalDate.now(); // 获取当前日期
    int year = date.getYear(); // 获取年份
    int month = date.getMonthValue(); // 获取月份
    int day = date.getDayOfMonth(); // 获取日期
  2. LocalTime:表示一个时间,例如:12:30:45,对应MySQL的TIME类型。

    LocalTime time = LocalTime.now(); // 获取当前时间
    int hour = time.getHour(); // 获取小时
    int minute = time.getMinute(); // 获取分钟
    int second = time.getSecond(); // 获取秒数
  3. LocalDateTime:表示日期和时间,例如:2023-07-03T12:30:45,对应MySQL的DATETIME类型。

    LocalDateTime dateTime = LocalDateTime.now(); // 获取当前日期和时间
    int year = dateTime.getYear(); // 获取年份
    int month = dateTime.getMonthValue(); // 获取月份
    int day = dateTime.getDayOfMonth(); // 获取日期
    int hour = dateTime.getHour(); // 获取小时
    int minute = dateTime.getMinute(); // 获取分钟
    int second = dateTime.getSecond(); // 获取秒数
  4. Period:表示日期之间的间隔。

    LocalDate date1 = LocalDate.of(2020, 6, 1);
    LocalDate date2 = LocalDate.of(2023, 7, 3);
    Period period = Period.between(date1, date2); // 计算两个日期之间的间隔
    int years = period.getYears(); // 获取年份间隔
    int months = period.getMonths(); // 获取月份间隔
    int days = period.getDays(); // 获取日期间隔
  5. Duration:表示时间之间的间隔。

    LocalTime time1 = LocalTime.of(12, 0, 0);
    LocalTime time2 = LocalTime.now();
    Duration duration = Duration.between(time1, time2); // 计算两个时间之间的间隔
    long hours = duration.toHours(); // 获取小时间隔
    long minutes = duration.toMinutes(); // 获取分钟间隔
    long seconds = duration.getSeconds(); // 获取秒数间隔
  6. ZonedDateTime:表示带时区的日期和时间,对应MySQL的DATETIME数据类型。

    ZonedDateTime zonedDateTime = ZonedDateTime.now(); // 当前日期和时间(带时区)
    ZoneId zoneId = ZoneId.of("Asia/Shanghai"); // 创建指定时区
    ZonedDateTime zonedDateTime = ZonedDateTime.now(zoneId); // 指定时区的当前日期和时间

    这些只是Java 8日期和时间API中的部分类和示例,该API还提供了许多其他功能,如格式化、解析、时区处理等。


今夜有点儿凉
40 声望3 粉丝

今夜有点儿凉,乌云遮住了月亮。