java 日期格式化为yyyy-mm-dd
时间: 2023-07-19 08:14:40 浏览: 42
你可以使用Java中的SimpleDateFormat类来格式化日期。具体实现代码如下:
```java
import java.text.SimpleDateFormat;
import java.util.Date;
public class DateFormatExample {
public static void main(String[] args) {
Date date = new Date();
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
String formattedDate = dateFormat.format(date);
System.out.println("Formatted date: " + formattedDate);
}
}
```
输出结果如下:
```
Formatted date: 2021-08-24
```
其中,SimpleDateFormat类的构造函数中的参数 "yyyy-MM-dd" 就是日期格式化的模板,具体含义如下:
- yyyy:年份,例如:2021
- MM:月份,例如:08(注意:这里是大写的"M",小写的"m"代表分钟)
- dd:日期,例如:24
你可以根据需要修改格式化模板来输出不同的日期格式。
相关问题
java 当前日期 格式化为yyyy-mm-dd 保证线程安全
以下是将当前日期格式化为 "yyyy-MM-dd" 格式的 Java 代码示例,并保证线程安全:
```java
import java.text.SimpleDateFormat;
import java.util.Date;
public class Main {
public static void main(String[] args) {
String pattern = "yyyy-MM-dd";
SimpleDateFormat simpleDateFormat = new SimpleDateFormat(pattern);
String formattedDate = simpleDateFormat.format(new Date());
System.out.println(formattedDate);
}
}
```
输出结果类似于:
```
2021-10-08
```
需要注意的是,`SimpleDateFormat` 并不是线程安全的,因此需要进行同步处理。可以使用 `ThreadLocal` 来实现线程安全,示例代码如下:
```java
import java.text.SimpleDateFormat;
import java.util.Date;
public class Main {
private static final ThreadLocal<SimpleDateFormat> dateFormatThreadLocal = ThreadLocal.withInitial(() -> new SimpleDateFormat("yyyy-MM-dd"));
public static void main(String[] args) {
String formattedDate = dateFormatThreadLocal.get().format(new Date());
System.out.println(formattedDate);
}
}
```
这样每个线程都会拥有一个独立的 `SimpleDateFormat` 实例,避免了线程安全问题。
java日期格式化yyyy-mm-dd
Java中使用SimpleDateFormat类来格式化日期。其中yyyy表示年份,MM表示月份,dd表示日。所以格式化字符串为 "yyyy-MM-dd"。
代码示例:
```
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
String dateStr = format.format(new Date());
```
上面的代码将当前日期格式化为"yyyy-MM-dd"的形式,并存储在dateStr变量中。