Java 8引入了全新的日期和时间API,即java.time包,提供了用于处理日期、时间和时间间隔的类。以下是一些示例:
LocalDate:表示一个日期,例如:2023-07-03,对应MySQL的DATE类型。
LocalDate date = LocalDate.now(); // 获取当前日期 int year = date.getYear(); // 获取年份 int month = date.getMonthValue(); // 获取月份 int day = date.getDayOfMonth(); // 获取日期
LocalTime:表示一个时间,例如:12:30:45,对应MySQL的TIME类型。
LocalTime time = LocalTime.now(); // 获取当前时间 int hour = time.getHour(); // 获取小时 int minute = time.getMinute(); // 获取分钟 int second = time.getSecond(); // 获取秒数
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(); // 获取秒数
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(); // 获取日期间隔
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(); // 获取秒数间隔
ZonedDateTime:表示带时区的日期和时间,对应MySQL的DATETIME数据类型。
ZonedDateTime zonedDateTime = ZonedDateTime.now(); // 当前日期和时间(带时区) ZoneId zoneId = ZoneId.of("Asia/Shanghai"); // 创建指定时区 ZonedDateTime zonedDateTime = ZonedDateTime.now(zoneId); // 指定时区的当前日期和时间
这些只是Java 8日期和时间API中的部分类和示例,该API还提供了许多其他功能,如格式化、解析、时区处理等。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。