将date类型的yyyy/MM格式的日期拼接-01转换成yyyy-MM-dd格式的date日期
时间: 2024-01-08 21:02:50 浏览: 68
sql语句中如何将datetime格式的日期转换为yy-mm-dd格式
可以使用 Java 中的 `SimpleDateFormat` 类将 `date` 类型的日期格式化为 `yyyy-MM-dd` 格式的字符串,然后再将字符串转换为 `date` 类型的日期。以下是一个示例代码:
```java
import java.text.SimpleDateFormat;
import java.util.Date;
public class Main {
public static void main(String[] args) throws Exception {
SimpleDateFormat inputFormat = new SimpleDateFormat("yyyy/MM");
Date inputDate = inputFormat.parse("2022/01");
SimpleDateFormat outputFormat = new SimpleDateFormat("yyyy-MM-dd");
String outputDateStr = outputFormat.format(inputDate) + "-01";
Date outputDate = outputFormat.parse(outputDateStr);
System.out.println(outputDate);
}
}
```
输出结果为:
```
Sat Jan 01 00:00:00 CST 2022
```
代码中,首先使用 `SimpleDateFormat` 类将输入的日期字符串解析成 `Date` 类型的对象。然后,再使用另一个 `SimpleDateFormat` 类将 `Date` 对象格式化成 `yyyy-MM-dd` 格式的字符串,并在后面拼接上 `-01`。最后,再使用 `SimpleDateFormat` 类将字符串解析成 `Date` 类型的日期。
需要注意的是,`SimpleDateFormat` 类是非线程安全的,如果在多线程环境下使用,需要进行同步处理。此外,还要注意输入的日期格式和输出的日期格式是否一致,否则可能会出现解析或格式化异常。
阅读全文