Java获取当前时间戳的几种方法
最推荐使用Instant.now().toEpochMilli()获取时间戳,1.System.currentTimeMillis()高效简单;2.Date().getTime()已过时;3.Instant支持纳秒且线程安全;4.LocalDateTime需结合时区转换。
最推荐使用Instant.now().toEpochMilli()获取时间戳,1. System.currentTimeMillis()高效简单;2. Date().getTime()已过时;3. Instant支持纳秒且线程安全;4. LocalDateTime需结合时区转换。

在 Java 中获取当前时间戳有多种方式,适用于不同的场景和需求。以下是几种常用的方法,涵盖从传统到现代的时间处理方式。
使用 System.currentTimeMillis()
这是最简单、最常见的获取时间戳的方式,返回自 1970 年 1 月 1 日 00:00:00 UTC 起的毫秒数。示例代码:
long timestamp = System.currentTimeMillis();
System.out.println("当前时间戳(毫秒): " + timestamp);
这种方式效率高,适合大多数需要时间戳的场景,比如日志记录、性能监控等。
使用 java.util.Date
通过创建 Date 对象并调用 getTime() 方法也可以获取时间戳。示例代码:
import java.util.Date;
Date date = new Date();
long timestamp = date.getTime();
System.out.println("当前时间戳(毫秒): " + timestamp);
虽然功能正常,但 Date 类已被认为是过时的,建议优先使用更现代的 API。
使用 java.time.Instant(Java 8+ 推荐)
Instant 是 Java 8 引入的现代化时间 API,表示时间线上的一个瞬时点,默认基于 UTC 时区。示例代码:
import java.time.Instant;
Instant now = Instant.now();
long timestamp = now.toEpochMilli(); // 毫秒
long secondTimestamp = now.getEpochSecond(); // 秒
System.out.println("毫秒时间戳: " + timestamp);
System.out.println("秒级时间戳: " + secondTimestamp);
推荐在新项目中使用 Instant,它线程安全且 API 更清晰。
使用 LocalDateTime 和 ZoneOffset
如果你需要结合本地时间处理时间戳,可以配合 ZoneOffset 使用。示例代码:
import java.time.LocalDateTime;
import java.time.ZoneOffset;
LocalDateTime now = LocalDateTime.now();
long timestamp = now.toEpochSecond(ZoneOffset.UTC);
System.out.println("秒级时间戳: " + timestamp);
注意:toEpochSecond 需要指定时区偏移,否则无法转换。
总结对比
- System.currentTimeMillis():最直接,性能好,适合简单场景。
- Date.getTime():可用但不推荐,API 设计较老。
- Instant.now().toEpochMilli():现代 Java 推荐方式,功能丰富,支持纳秒精度。
- LocalDateTime.toEpochSecond():适合需要本地时间逻辑的场景,需手动处理时区。
Photoshop 2026 是 Adobe 推出的专业图像处理与视觉设计软件,支持 Windows、macOS 和 iPad 等平台,广泛应用于摄影修图、电商设计、平面海报、数字绘画及视觉合成等创作场景。
Blender 是一款免费开源、跨平台的专业 3D 创作软件,集建模、动画、渲染、视频编辑与视觉合成等功能于一体,广泛应用于影视动画、游戏设计和建筑可视化等领域。软件支持 Cycles 物理渲染器与 Eevee 实时渲染引擎,并提供多边形建模、骨骼绑定、物理模拟等专业工具。Blender 兼容 Windows、macOS 和 Linux 系统,安装包轻巧、运行流畅,依托活跃的全球开发者社区持续更新,是从初学者到专业创作者都值得选择的正版 3D 创作工具。
Photoshop 2026 是 Adobe 推出的专业图像处理与视觉设计软件,支持 Windows、macOS 和 iPad 等平台,广泛应用于摄影修图、电商设计、平面海报、数字绘画及视觉合成等创作场景。
Blender 是一款免费开源、跨平台的专业 3D 创作软件,集建模、动画、渲染、视频编辑与视觉合成等功能于一体,广泛应用于影视动画、游戏设计和建筑可视化等领域。软件支持 Cycles 物理渲染器与 Eevee 实时渲染引擎,并提供多边形建模、骨骼绑定、物理模拟等专业工具。Blender 兼容 Windows、macOS 和 Linux 系统,安装包轻巧、运行流畅,依托活跃的全球开发者社区持续更新,是从初学者到专业创作者都值得选择的正版 3D 创作工具。















