Java:日期操作


1、生成20240605180212格式的时间

String dateTime = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyyMMddHHmmss"));

2、Date类型转LocalDate类型

Date date = new Date();
Instant instant = date.toInstant();
ZoneId zoneId = ZoneId.systemDefault();
LocalDate localDate = instant.atZone(zoneId).toLocalDate();

3、LocalDate类型基本操作

// 创建LocalDate
LocalDate now = LocalDate.now();  // 2024-06-19

// 天数+1
LocalDate new_now = now.plusDays(1);  // 2024-06-20

4、格式化日期格式

// JDK1.8 之前的日期格式化
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String now = dateFormat.format(new Date());
System.out.println(now);  // 2024-06-20 00:00:00

// JDK1.8 之后的日期格式化
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDateTime now = LocalDateTime.now();
System.out.println(now.format(formatter));  // 2024-06-20 00:00:00

5、String 与 LocalDateTime 之间的转换

// String 转 LocalDateTime
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
String now = "2024-06-25 00:00:00";
LocalDateTime parse = LocalDateTime.parse(now, formatter);
System.out.println(parse);  // 2024-06-25T00:00

// LocalDateTime 转 String
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDateTime now = LocalDateTime.now();
String format = formatter.format(now);
System.out.println(format);  // 2024-06-25 10:57:50

6、生成指定时间段内的时间列表

在这里插入图片描述

生成当前月份第一天到现在的时间列表

DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
LocalDate startDate = LocalDate.parse("2024-08-01", formatter);
LocalDate endtDate = LocalDate.parse("2024-08-15", formatter);

// 创建一个列表来保存月份中的每一天
List<LocalDate> daysInMonth = new ArrayList<>();
// 循环添加每一天到列表中
for (LocalDate day = startDate; !day.isAfter(endtDate); day = day.plusDays(1)) {
    daysInMonth.add(day);
}
// 打印结果
for (LocalDate date : daysInMonth) {
    System.out.println(date);
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Monly21

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值