java中Timestamp转Date
时间: 2025-06-27 11:12:55 浏览: 8
### 如何在 Java 中将 `Timestamp` 对象转换为 `Date` 对象
在 Java 中,可以轻松地通过构造函数或者类型转换的方式实现从 `java.sql.Timestamp` 到 `java.util.Date` 的转换。以下是具体的说明以及代码示例。
#### 方法一:使用构造函数
可以通过 `java.util.Date` 类的构造函数来创建一个新的 `Date` 实例,并传入 `Timestamp` 对象的时间戳毫秒数作为参数[^1]:
```java
import java.sql.Timestamp;
import java.util.Date;
public class TimestampToDateExample {
public static void main(String[] args) {
long millis = System.currentTimeMillis();
Timestamp timestamp = new Timestamp(millis);
// 使用 Date 构造函数进行转换
Date date = new Date(timestamp.getTime());
System.out.println("Timestamp: " + timestamp);
System.out.println("Converted Date: " + date);
}
}
```
上述代码展示了如何利用 `timestamp.getTime()` 获取底层的时间戳毫秒值并传递给 `Date` 的构造器完成转换。
---
#### 方法二:直接强制类型转换
如果只需要简单地表示相同的逻辑时间点而不需要额外操作,则可以直接将 `Timestamp` 赋值给 `Date` 变量,因为两者都继承自同一个基类 `java.util.Date` 并共享相同的核心字段[^3]:
```java
import java.sql.Timestamp;
import java.util.Date;
public class DirectCastExample {
public static void main(String[] args) {
Timestamp timestamp = new Timestamp(System.currentTimeMillis());
// 强制类型转换
Date date = (Date) timestamp;
System.out.println("Original Timestamp: " + timestamp);
System.out.println("Casted Date: " + date);
}
}
```
此方式适用于不涉及复杂日期处理的情况,在某些场景下能够简化代码结构。
---
#### 注意事项
当涉及到跨时区的操作或更复杂的日期计算时,推荐优先考虑现代 API (`java.time`) 来替代传统的 `java.sql.Timestamp` 和 `java.util.Date`,以获得更好的可读性和准确性[^4]。例如,可以借助 `Instant`, `LocalDateTime`, 或者其他相关类来进行更加精确的日历运算和格式化工作。
---
阅读全文
相关推荐


















